Part Number Hot Search : 
E200A 1N5244B CT100 DK300B5 HC132 80196 MT6C06E HD74HCT
Product Description
Full Text Search
 

To Download 78Q8430-100IGTF Datasheet File

  If you can't view the Datasheet, Please click here to try to view without PDF Reader .  
 
 


  Datasheet File OCR Text:
  78q8430 10/100 ethernet mac and phy simplifying system integration tm data sheet march 200 9 rev. 1.2 ? 2009 teridian semiconductor corporation 1 description the teridian 78q8430 is a 10/100 fast ethernet controller supporting multi - media offload. the device is optimized for host processor offloading and throughput enhancements for demanding multi - media applications found in set top box, ip video a nd broadband media appliance applications. the 78q8430 seamlessly interfaces to non - pci processors through a simplified pseudo sram - like host bus interface supporting 32/16/8 bit data bus widths. supported features include ieee802.3x flow control and full ieee802.3 and 802.3u standards compliance. supporting 10base - t and 100base - tx, the transceiver provides auto mdi - x cable cross - over correction, auto negotiation, link configuration and full/half duplex support with full duplex flow control. the line i nterface requires only a dual 1:1 isolation transformer. numerous packet processing and ip address resolution control functions are incorporated, including an extensive set of error monitoring, reporting and troubleshooting features. the 78q8430 provides optimal 10/100 ethernet connectivity in demanding video streaming and mixed - media applications. b enefits ? support for ieee - 802.3, ieee - 802.3u and ieee - 802.3 - 2000 annex 31.b ? low host cpu utilization/overhead with minimal software driver overhead and small driver memory space requirements ? improved packet processing, low latency and low host cpu utilization ? highest performance streaming video over ip ? optimized performance in mixed media application such as video, data and voice ? ease of use, faster development cycles, high throughput ? optimized power conservation with automatic turn on when needed ? reduced host cpu utilization and overhead ? improved packet processing ? optimized performance in mixed media applications features ? single chip 10base - t/100base - tx ieee - 802.3 compliant mac and phy ? adaptive 32 kb sram fifo memory allocation between tx and rx paths ? q ueue independent user settable water marks ? per queue status indication ? address resolution controller (arc) ? mult iple perfect address filtering: 8 default (max 12) ? wildcard address filtering, individual, multicast and broadcast address recognition and filtering ? p ositive/negative filtering and promiscuous mode ? 64 kb jumbo packet support ? qos: 4 transmit priority levels ? non - pci pseudo - sram host bus interface ? 8-b it , 16 -b it and 32 -b it bus width ? big/little endian support for 16 -b it /32 -b it bus widths ? asynchronous (100 mhz) and synchronous (50 mhz) bus clock support ? low power and flexible power supply management ? power down/save ? wake on lan (magic packet?, onnow packet) ? link status c hange ? traffic offload engine functionality ? transfer f rame: apf & icmp echo ? ip firewall configuration: drop frames on source ip address ? ip checksum ? available in an industrial temperature range ( - 40 c to +85 c) ? rohs compliant (6/6) lead - free package applications ? satellite, cable and iptv set top boxes ? multi media residential gateways ? high definition 1080p/1080i dtvs ? ip - pvr and video distribution systems ? digital video recorders/players ? routers and iads ? video ov er ip system, ip - pbx ? ip security cameras / pvrs ? low latency industrial automation downloaded from: http:///
78q8430 data sheet ds_8430_001 2 teridian proprietary and confidential rev. 1.2 table of contents 1 introduction ................................................... ................................................... ................................... 7 1.1 systems application s ................................................... ................................................... ............. 7 1.2 system level application information ................................................... ....................................... 8 1.2.1 set top box application ................................................... ............................................... 8 1.2.2 ip security application ................................................... .................................................. 8 1.2.3 ip pbx application ................................................... ................................................... ..... 9 1.3 overview ................................................... ................................................... ................................ 9 1.4 application environments ................................................... ................................................... .... 10 1.5 supply voltages ................................................... ................................................... ................... 10 1.6 power management ................................................... ................................................... ............. 10 2 pinout ................................................... ................................................... ........................................... 11 3 pin description ................................................... ................................................... ............................ 12 3.1 pin legend ................................................... ................................................... .......................... . 12 3.2 pin descriptions ................................................... ................................................... ................... 12 3.2.1 clock pins ................................................... ................................................... ................ 12 3.2.2 media dependent interface (mdi) pins ................................................... ...................... 13 3.2.3 led display (phy) pins ................................................... ............................................. 13 3.2.4 eeprom pins ................................................... ................................................... ......... 13 3.2.5 gbi data pins ................................................... ................................................... .......... 14 3.2.6 gbi address pins ................................................... ................................................... .... 15 3.2.7 gbi control pins ................................................... ................................................... ...... 15 3.2.8 mode pins ................................................... ................................................... ................ 16 3.2.9 jtag pins ................................................... ................................................... ................ 16 3.2.10 power pins ................................................... ................................................... ............... 17 4 electrical specification ................................................... ................................................... ............... 18 4.1 absolute maximum ratings ................................................... ................................................... . 18 4.2 recommended operation conditions ................................................... ..................................... 18 4.3 dc characteristics ................................................... ................................................... ............... 18 4.4 digital i/o characteristics ................................................... ................................................... .... 19 4.5 analog electrical characteristics ................................................... ............................................ 19 4.5.1 100base - tx transmitter ................................................... ............................................. 19 4.5.2 100base - tx transmitter (informative) ................................................... ....................... 19 4.5.3 100base - tx receiver ................................................... ................................................. 20 4.5.4 10base - t transmitter ................................................... ................................................. 20 4.5.5 10base - t transmitter (informative) ................................................... ............................ 20 4.5.6 10base - t rece iver ................................................... ................................................... .. 21 5 host interface timing specification ................................................... ............................................. 22 5.1 host interface ................................................... ................................................... ....................... 22 5.1.1 synchronous mode timing ................................................... ......................................... 23 5.1.2 bus clock timing ................................................... ................................................... ..... 24 5.1.3 reset timing ................................................... ................................................... ............ 24 6 functional description ................................................... ................................................... ............... 25 6.1 internal block diagrams ................................................... ................................................... ....... 25 6.1.1 internal digital block ................................................... ................................................... 25 6.1.2 internal phy ................................................... ................................................... ............. 25 6.2 data queuing ................................................... ................................................... ....................... 26 6.3 host interface ................................................... ................................................... ....................... 27 6.3.1 reading receive data ................................................... ................................................ 27 6.3.2 writing transmit data ................................................... ................................................. 27 6.3.3 dma slave mode access ................................................... ........................................... 29 6.4 snoop mode access ................................................... ................................................... ............ 29 6.5 water marking ................................................... ................................................... ...................... 30 6.5.1 interrupt watermark ................................................... ................................................... . 30 downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 3 6.5.2 pause watermark ................................................... ................................................... .. 30 6.5.3 headroom watermark ................................................... ................................................ 30 6.6 counters ................................................... ................................................... ............................... 30 6.6.1 summary of counters ................................................... ................................................. 30 6.6.2 reading and setting counter values ................................................... ......................... 31 6.6.3 precision counting ................................................... ................................................... ... 32 6.6.4 rollover interrupts ................................................... ................................................... ... 32 6.7 packet classification ................................................... ................................................... ............ 32 6.7.1 address filtering ................................................... ................................................... ...... 34 6.7.2 configuring the cam ................................................... .................................................. 38 6.7.3 frame format ................................................... ................................................... .......... 39 6.7.4 default cam rule summary ................................................... ....................................... 39 6.8 timers ................................................... ................................................... .................................. 44 6.8.1 pause timer ................................................... ................................................... ........... 44 6.8.2 hnr timer ................................................... ................................................... ............... 44 6.8.3 interrupt delay timer ................................................... .................................................. 44 6.9 eeprom controller ................................................... ................................................... ............. 44 6.10 ethernet mac ................................................... ................................................... ...................... 44 6.10.1 mac transmit block ................................................... ................................................... 44 6.10.2 mac receive block ................................................... ................................................... . 45 6.10.3 mac control register ................................................... ................................................. 45 6.10.4 transmitting a frame ................................................... .................................................. 45 6.10.5 ieee 802.3 transmit protocols ................................................... ................................... 45 6.10.6 transmit operation ................................................... ................................................... .. 46 6.10.7 receiving a frame ................................................... ................................................... ... 46 6.10.8 strip padding/fcs ................................................... ................................................... ... 47 6.11 mac error reporting ................................................... ................................................... ........... 47 6.11.1 mac transmit errors ................................................... .................................................. 47 6.11.2 mac receive errors ................................................... ................................................... 48 6.12 phy operations ................................................... ................................................... ................... 49 6.12.1 automatic mdi/mdix cable crossover configuration ................................................... 49 6.12.2 100base - tx transmit ................................................... ................................................. 49 6.12.3 100base - tx receive ................................................... .................................................. 49 6.12.4 10base - t transmit ................................................... ................................................... .. 49 6.12.5 10base - t receive ................................................... ................................................... ... 50 6.12.6 sqe test ................................................... ................................................... ................. 50 6.12.7 polarity correctio n ................................................... ................................................... ... 50 6.12.8 natural loopback ................................................... ................................................... ..... 50 6.12.9 auto - negotiation ................................................... ................................................... ...... 51 6.12.10 led indicators ................................................... ................................................... ........ 51 6.12.11 phy interrupts ................................................... ................................................... ........ 51 6.12.12 internal clock pll ................................................... ................................................... .. 51 7 register descriptions ................................................... ................................................... ................. 52 7.1 register overview ................................................... ................................................... ................ 52 7.2 que register overview ................................................... ................................................... ....... 53 7.3 ctl register overview ................................................... ................................................... ........ 54 7.4 snoop address space overview ................................................... ............................................ 55 7.5 que registers ................................................... ................................................... ..................... 56 7.5.1 packet control word register ................................................... .................................... 56 7.5.2 packet size register ................................................... .................................................. 56 7.5.3 setup transmit data register ................................................... .................................... 57 7.5.4 transmit data register ................................................... ............................................... 57 7.5.5 receive data register ................................................... ................................................ 57 7.5.6 que first/last register ................................................... ............................................. . 58 7.5.7 que status register ................................................... .................................................. 58 7.6 ctl registers ................................................... ................................................... ...................... 59 7.6.1 dma control and status register ................................................... ............................... 59 7.6.2 receive packet status register ................................................... ................................. 59 downloaded from: http:///
78q8430 data sheet ds_8430_001 4 rev. 1.2 7.6.3 transmit packet status register ................................................... ................................ 59 7.6.4 transmit producer status ................................................... ........................................... 60 7.6.5 receive producer status ................................................... ............................................ 60 7.6.6 revision id ................................................... ................................................... ............... 61 7.6.7 configuration ................................................... ................................................... ............ 61 7.6.8 receive to transmit transfer register ................................................... ....................... 61 7.6.9 frame disposition register ................................................... ........................................ 61 7.6.10 receive first block status register ................................................... .................... 61 7.6.11 receive data status registe r ................................................... ..................................... 62 7.6.12 bist control register ................................................... ................................................. 62 7.6.13 bist bypass mode data register ................................................... .............................. 63 7.6.14 station management data register ................................................... ........................... 63 7.6.15 station management control and address register ................................................... .. 63 7.6.16 prom data regist er ................................................... .................................................. 63 7.6.17 prom control register ................................................... ............................................. . 64 7.6.18 mac control register ................................................... ................................................. 64 7 .6.19 count data register ................................................... ................................................... 65 7.6.20 counter control register ................................................... ............................................ 65 7.6.21 counter management register ................................................... ................................... 66 7.6.22 snoop control register ................................................... ............................................. . 66 7.6.23 interrupt delay count register ................................................... ................................... 66 7.6.24 pause delay count r egister ................................................... ...................................... 66 7.6.25 host not responding count register ................................................... ........................ 67 7.6.26 wake up status register ................................................... ........................................... 67 7.6.27 water mark values register ................................................... ....................................... 67 7.6.28 power management capabilities ................................................... ................................ 67 7.6.29 power management control and status register ................................................... ...... 68 7.6.30 cam address register ................................................... ............................................... 68 7.6.31 rule match register ................................................... ................................................... 69 7.6.32 rule control register ................................................... ................................................. 69 7.6.33 que status interrupt register ................................................... ..................................... 70 7.6.34 que status mask register ................................................... .......................................... 70 7.6.35 overflow/underrun interrupt register ................................................... ......................... 71 7.6.36 overflow/underrun mask register ................................................... .............................. 71 7.6.37 transmit rmon interrupt register ................................................... ............................. 71 7.6.38 transmit rmon mask register ................................................... .................................. 72 7.6.39 receive rmon interrupt register ................................................... .............................. 72 7.6.40 receive rmon mask register ................................................... ................................... 72 7.6.41 host interrupt register ................................................... ................................................ 72 7.6.42 host interrupt mask register ................................................... ...................................... 73 7.7 phy management registers ................................................... .................................................. 74 7.7.1 phy register overview ................................................... ............................................. . 74 7.7.2 phy control register C mr0 ................................................... ...................................... 75 7.7.3 phy status register C mr1 ................................................... ....................................... 76 7.7.4 phy identifier registers C mr2, mr3 ................................................... ........................ 77 7.7.5 phy auto - negotiation advertisement registers C mr4 ............................................... 77 7.7.6 phy auto - negotiation line partner ability register C mr5 .......................................... 78 7.7.7 phy auto - negotiation expansion register C mr6 ................................................... ..... 78 7.7.8 phy vendor specific register C mr16 ................................................... ...................... 79 7.7.9 phy interrupt control / status register C mr17 ................................................... ........ 80 7.7.10 phy transceiver control register C mr19 ................................................... ................ 80 7.7.11 phy diagnostic register C mr18 ................................................... ............................... 81 7.7.12 phy led configuration register C mr23 ................................................... .................. 81 7.7.13 phy mdi / mdix control re gister C mr24 ................................................... ................ 82 8 isolation transformers ................................................... ................................................... ............... 83 9 reference crystal ................................................... ................................................... ....................... 83 10 system bus interface schematic ................................................... ................................................. 84 11 line interface schematic ................................................... ................................................... ............ 85 downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 5 12 package mechanical drawing (100 - pin lqfp) ................................................... ............................ 86 13 ordering information ................................................... ................................................... .................. 87 14 related documentation ................................................... ................................................... .............. 87 15 contact information ................................................... ................................................... .................... 87 tables table 1: pin legend ................................................... ................................................... .............................. 12 table 2: clock pin descriptions ................................................... ................................................... ............ 12 table 3: mdi pin descriptions ................................................... ................................................... ............... 13 table 4: led pin descriptions ................................................... ................................................... .............. 13 table 5 : eeprom interface pin descriptio ns ................................................... ......................................... 13 table 6: gbi data pin descriptions ................................................... ................................................... ...... 14 table 7: gbi address pin descriptions ................................................... ................................................... . 15 table 8: gbi control pin descriptions ................................................... ................................................... .. 15 table 9: chip mode pin descriptions ................................................... ................................................... .... 16 table 10: jtag pin descript ions ................................................... ................................................... .......... 16 table 11: power pin descriptions ................................................... ................................................... ......... 17 table 12: absolute maximum ratings ................................................... ................................................... .. 18 table 13: recommended operating conditions ................................................... ...................................... 18 table 14: dc characteristics ................................................... ................................................... ................ 18 table 15: digital i/o characteri stics ................................................... ................................................... ..... 19 table 16: mii 100base - tx transmit timing ................................................... ............................................ 19 table 17: mii 100base - tx transmitter (informative) ................................................... .............................. 19 table 18: mii 100base - tx receiver timing ................................................... ............................................ 20 table 19: mii 10base - t transmitter timing ................................................... ............................................ 20 table 20: mii 10base - t transmitter (informative) ................................................... ................................... 20 table 21: mii 10base - t receive timing ................................................... .................................................. 21 table 22: transmit data buffer example ................................................... ................................................. 28 table 23: counter summary ................................................... ................................................... ................. 30 table 24: cam rules associated with unicast filter bytes ................................................... ..................... 34 table 25: cam rules associated with multicast filter bytes ................................................... .................. 36 table 26: control logic actions ................................................... ................................................... ............ 38 table 27: rcr match control ................................................... ................................................... ............... 39 table 28: ethernet frame for classification ................................................... ............................................. 39 table 29: process destination address rules ................................................... ......................................... 40 table 30: process source address rules ................................................... ............................................... 42 table 31: process length/type, mac control frames and start ip header chec ksum rules ................. 42 table 32: process rules for onnow packet ................................................... ............................................ 43 table 33: process rules for magic packet ................................................... ............................................. . 43 table 34: phy register group ................................................... ................................................... ............. 74 table 35: isolation transformers ................................................... ................................................... .......... 83 table 36: reference crystal ................................................... ................................................... ................. 83 table 37: 78q8430 order numbers and packaging marks ................................................... ..................... 87 downloaded from: http:///
78q8430 data sheet ds_8430_001 6 rev. 1.2 figures figure 1: 78q8430 block diagram ................................................... ................................................... .......... 7 figure 2: set top box diagram ................................................... ................................................... .............. 8 figure 3: network cameras diagram ................................................... ................................................... ..... 8 figure 4: typical fxo voip application ................................................... ................................................... .. 9 figure 5: device block diagram ................................................... ................................................... ............. 9 figure 6: gbi bus block diagram ................................................... ................................................... ......... 10 figure 7: pinout ................................................... ................................................... ..................................... 11 figure 8: host interface timing diagram ................................................... ................................................. 22 figure 9: host bus output timing diagram ................................................... ............................................. 23 figure 10: host bus input timing diagram ................................................... ............................................. . 23 figure 11: bus clock timing ................................................... ................................................... ................. 24 figure 12: internal digital block diagram ................................................... ................................................ 25 figure 13: internal phy block diagram ................................................... ................................................... 26 figure 14: classification architecture ................................................... ................................................... ... 33 figure 15: system bus interface schematic ................................................... ............................................ 84 figure 16: line interface schematic ................................................... ................................................... ..... 85 figure 17: lqfp drawing ................................................... ................................................... ..................... 86 downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 7 1 introduction the teridian 78q8430 is a single chip 10base - t/100base - tx capable fast ethernet media access controller (mac) and physical layer (phy) transceiver. the device is optimized for video applications, such as the set top box (stb), and easily interfaces to available stb c ore processors, such as the sti5100, sti5516, sti5514, arm ? and intel ? based processors. the 78q8430 is complian t with applicable ieee - 802.3 standards. mac and phy configuration and status registers are provided a s specified by ieee - 802.3u. the 78q8430 operates over category - 5 unshielded twisted pair (cat - 5 utp) cabling in 100base - tx applications and over cat - 3 ut p in 10base - t applications requiring only a dual 1:1 isolation transformer interface to the copper media. the ethernet mac section makes use of a 32 kb deep on - chip sram fifo packet memory to adaptively buffer transmit and receive data. sram memory can be dynamically allocated to either the transmi t queues or the receive queues as required to optimize throughput. the host processor accesses the fifo(s) using a simple asynchronous pseudo - sram like host bus interface. a 32 bit wide bus is provided; the bu s width can be pin - configured for 8 - bit, 16 - bit or 32 - bit bus width at boot - up. big endia n, little endian and mixed endian options are available in 32 - bit operation; little endian is available for 16 - bit operation. different end - in variations are supported through internal circuitry with minimal user intervention required. the mac interface logic may assert memwait during bus transactions, requesting wait states from the host while critical internal data transfer completes. the mac provides both half duplex and full duplex operation, as well as support for full duplex flow control. complete, portable device driver s for linux ? , os20 and vxworks ? 1.1 systems applications are available. the 78q8430 operates from a single 3.3 v supply. power down modes and power s aving modes are available. the 78q8430 defaults to use an on - chip crystal oscillator. in this mode, a 25 mhz reference crystal is connected between the xtlp and xtln pins. alternatively, an ex ternally generated 25 mhz clock can be connected to the xtlp pin. the chip will automatically configu re itself to use the external clock. in this mode of operation, a crystal is not required. figure 1 presents an overview of the 78q8430 in a block diagram. teridian 78q8430 single chip 10/100 ethernet controller 8-bit/16-bit/32-bit system bus configuration eeprom interface (optional) jtag interface led link (programmable) led activity (programmable) rj45 1:1 transformer cat 5 cable figure 1 : 78q8430 block diagram downloaded from: http:///
78q8430 data sheet ds_8430_001 8 rev. 1.2 1.2 system level application information this section provides an overview of system level applications in some t ypical high - volume consumer equipment. 1.2.1 set top box application figure 2 shows a typical application diagram for a set top box. figure 2 : set top box diagram 1.2.2 ip security application figure 3 shows a typical application diagram for an iptv security camera applic ation. figure 3 : network cameras diagram downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 9 1.2.3 ip pbx application figure 4 shows a typical application diagram for an ip pbx application. figure 4 : typical fxo voip application 1.3 overview the 78q8430 is divided into four sections, as shown in figure 5. ? generic bus interface (gbi) control layer ? queue memory layer ? ethernet media access control (mac) layer ? ethernet physical (phy) layer cam rmon gbi bus layer queue memory layer mac layer phy layer gbi access logic gbi dma slave mode logic queue sram pause/ hnr timers snoop controller que controller que write logic que write logic que read logic memory manager ctl controller packet classify mac write logic mac read logic flow control mac tx logic tx fifo rx fifo mac rx logic mac control & status registers tx pcs rx pcs pmd smi control & status register que write logic que write logic figure 5 : device block diagram 78q8430 10/100 mac/phy 78q8430 10/100 mac/phy downloaded from: http:///
78q8430 data sheet ds_8430_001 10 rev. 1.2 1.4 application environments this section provides an overview of the application environments such as the st microelectronics and embest arm9 ? figure 6 processor s, for which the 78q8430 provides a seamless interface. shows a simple application diagram for a design using the gbi based 10/100 - mbps ethernet controller. by providing a direct connection to the gbi bus, applications requiring ethernet network access can be realized with a high degree of integration. the figure shows the processor and t he ethernet controller with connected address and data buses. this connection can be either on the mother board, or via an expansion module. the gbi controller controls the address and data and the system control signals. 78q8430 10/100 mbps ethernet controller and phy gbi eeprom or rom 8/16/32-bit bus 1:1 transformer and rj45 connector figure 6 : gbi bus block diagram figure 6 shows the components that are likely to be used with the 10/100 - mbps ethernet controller. the integrated phy is designed to directly connect to an integrated 1:1 transformer and rj - 45 connector, thereby providing a minimum parts solution. 1.5 supply voltages the 78q8430 requires a single 3.3 v (+/ -5%) supply voltage. no external components are required to gen erate on - chip bias voltages and currents. high accuracy is maintained through a closed - loop trimmed biasing network. on - chip power converters generate 1.8 v power for core digital logic and mem ory blocks. the voltage regulator is not affected by the power - down mode. 1.6 power management the 78q8430 supports both normal and power - saving modes. when the gbi bus is active, it can be in normal mode or power management low - power modes. downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 11 2 pin o ut the 78q8430 is available in a 14x14 mm 100 - pin lqfp package. 78q8430 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 1 2 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 7677 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 gnd txp rxp gndvcc gnd bootsz0 gnd tms data26data25 data24 vcc gnd gnd addr7 led0 promdo data27 data28data20 data18 vccvcc gnd vcc tdi trst tclk reset vcc addr1addr0 wr oe memwait busclk cs addr2 vcc addr3addr4 addr5 addr8 addr9 addr6 data0 data1 data2 data3 data4 data5 data6 data7 data8 data9 data10 data11 data12 data13 data14 data15 data23data22 data21 data16 vcc vcc vcc bootsz1 txn rxn led1 gnd xtln xtlp vcc clkmode waitmode busmode vcc tdo endian1 endian0 gnd promdi vccgnd data31 pmeint promcsdata30 data29 promclk gnd data17 data19 gndgnd 49 figure 7 : pinout downloaded from: http:///
78q8430 data sheet ds_8430_001 12 rev. 1.2 3 pin description 3.1 pin legend table 1 lists the different pin types found on the 78q8430 device. the type field of the pin des cription tables refers to one of these types. table 1 : pin legend type description a analog iu ttl- level input, with pull - up is ttl- level input, with schmitt trigger o ttl- level output od ttl- level outpu t (open drain) s supply i ttl- level input id ttl- level input, with pull - down b ttl- level bidirectional pin oz ttl- level output (tristate) g ground 3.2 pin descriptions the pin descriptions in the following tables are grouped by interface. a pin number, type specification per table 2 and a functional description is provided for each pin on the 78q8430 device. 3.2.1 clock pins table 2 : clock pin descriptions signal pin number type description xtlp 87 a crysta l positive/negative to use the internal oscillator, connect a 25 mhz crystal across xtlp and xtln. to use of an external clock, xtln is grounded and xtlp is driven with a 25 mhz clock. provides timing reference for all media dependant interface operations . an internal pll is used to multiply this clock by four for use as the main system clock in internal clock mode. xtln 88 busclk 15 i peripheral clock the source for the main system clock in external clock mode. in synchronous bus mode, all host bus signals are assumed to be synchronous to this clock. downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 13 3.2.2 media dependent interface (mdi) pins table 3 : mdi pin descriptions signal pin number type description txp 97 a transmit output positive/negative transmitter outputs for both 10base - t and 100base - tx. mdi - x mode: receive input positive/negative receiver inputs for both 10base - t and 100base - tx. txn 98 a rxp 94 a receive input positive/negative receiver inputs for both 10base - t and 100base - tx. mdi - x mode: transmit output posit ive/negative transmitter outputs for both 10base - t and 100base - tx. rxn 93 a 3.2.3 led display (phy) pins the led pins use standard logic drivers. they output a logic low when the led is meant to be on and are tri - state when it is meant to be off. the led cathode should be connected to the output pin and a series resistor from the power supply connected to the led anode. table 4 : led pin descriptions signal pin number type description led0 90 oz phy display led0 (link ok) the default for led0 is link ok (led is on for link established). led1 92 oz phy display led1 (activity) the default for led1 is link activity (led blinks for rx or tx dat a transferred). 3.2.4 eeprom pins table 5 : eeprom interface pin descript ions signal pin number type description prom_cs 75 o eeprom chip select used to frame transmissions to and from an external eeprom. prom_clk 74 o eeprom clock clock for transmitting to and from an external eeprom/rom. this is compatible with the slowest commercial parts, which specify a maximum frequency of 1 mhz. prom_di 77 i eeprom data in data line for transmitting from the external eeprom to the controller. must be high with no eeprom present. prom_do 76 oz eeprom data out transfers data from the controller to an external eeprom/rom. downloaded from: http:///
78q8430 data sheet ds_8430_001 14 rev. 1.2 3.2.5 gbi data pins table 6 : gbi data pin descriptions signal pin number type description data31 69 b data bus data[31:0] bi - directional host bus data. the bootsz pins determine how many of these are actually used. the oe input will disable the output drivers to prevent bus collisions. data30 68 data29 67 data28 66 data27 65 data26 64 data25 63 data24 62 data23 59 data22 58 data21 57 data20 56 data19 55 data18 54 data17 53 data16 52 data15 49 data14 48 data13 47 data12 46 data11 45 data10 42 data9 41 data8 40 data7 39 data6 38 data5 33 data4 32 data3 31 data2 30 data1 29 data0 28 downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 15 3.2.6 gbi address pins table 7 : gbi address pin descriptions signal pin number type description addr9 25 i address bus the address lines are required to be stable for the entire duration of a cs cycle. in synchronous bus mode, the address pins are sampled on the first rising edge of busclk that cs is asserted low. in asynchronous bus mode, the address pins are sampled as soon as the falling edge of cs is synchronized to the internal system clock. in 32 -b it bus mode, addr[1:0] are ignored. in 16 - bit bus mode, addr[0] is ignored. in 8 - bit bus mode, all addr bits are used to reference a register byte. addr8 24 i addr7 23 i addr6 22 i addr5 21 i addr4 20 i addr3 19 i addr2 18 i addr1 9 i ad dr0 10 i 3.2.7 gbi control pins table 8 : gbi control pin descriptions signal pin number type description reset 7 i reset (active low) referred to as hardware reset. causes all 78q8430 outputs to enter a high - impedance state, stops all current operations and initializes registers. cs 16 i chip select (active low) the processor asserts this signal to initiate a read or write operation. wr 11 i write enable (active low) the processor asserts wr to indicate a write operation. oe 12 i o utput enable (active low) the processor asserts oe to enable the 78q8430 data drivers during a read cycle. memwait 13 oz memory wait during a bus cycle the 78q8430 asserts memwait to indicate that it is not ready to drive or receive valid data on the data lines. the polarity is dependent on the waitmode pin. when waitmode is high then the pin is asserted high; when waitmode is low then the pin is asserted low. int 72 od interrupt (active low) the 78q8430 asserts the int signal low when it detects an int errupt event. pme 73 od power management event (active low) the 78q8430 asserts the pme signal low when it detects a wake - up event. downloaded from: http:///
78q8430 data sheet ds_8430_001 16 rev. 1.2 3.2.8 mode pins table 9 : chip mode pin descriptions signal pin number type description busmode 83 i busmode, clkmode, waitmode configuration 0,0,0 = sync bus, ext. system clock, memwait act low 0,0,1 = sync bus, ext. system clock, memwait act high 0,1,0 = reserved 0,1,1 = reserved 1,0,0 = async bus, ext. system clock, memwait act lo w 1,0,1 = async bus, ext. system clock, memwait act hi gh 1,1,0 = async bus, int. system clock, memwait act lo w 1,1,1 = async bus, int. system clock, memwait act hi gh clkmode 85 i waitmode 84 i endian0 79 i data bus endian select 0,0 = big endian (msb at high bit posit ions) 0,1 = bytes are little endian inside 16 - bit words 1,0 = word endian (msw at low bit positions) 1,1 = little endian (msb at low bit positions) endian1 80 i bootsz1 100 i gbi bus size bootsz[1:0]: is strapped to indicate the gbi bus size: 00 = bus i s 32 bits wide 01 = bus is 16 bits wide. only data[15:0] are used. 10 = bus is 8 bits wide. only data[7:0] are used. 11 = reserved bootsz0 1 i notes: 1. the internal phy should never be powered down when the internal system clock is selected by the clkmode pin (clkmode=1) 2. there is no external visibility for the system clock when the internal c lock mode is selected. the gbi interface must therefore always be used in asynchronous bus mode. 3.2.9 jtag pins table 10 : jtag pin descriptions signal pin number type description trst 5 i test reset (active low) system provided reset for jtag logic. tclk 6 i test clock system provided clock for jtag logic. tms 3 iu test mode select enables jtag boundary scan using serial in/serial out ports. sampled on rising edge of tclk. tdi 4 iu test data in serial input port for clocking in test data to be shifted to the output at the end of the boundary scan chain (tdo). tdo 81 o test data out serial output port for clocking out test data shifted from t he input at the beginning of the boundary scan chain (tdi). downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 17 3.2.10 power pins table 11 : power pin descriptions signal pin number type description vcca 86 95 96 s 3.3 v supply for the analog transmit section. vcc 8 17 27 36 - 37 44 51 61 71 82 s 3.3 v supply for the digital logic section. gnd 2 14 26 34 - 35 43 50 60 70 78 89 91 99 g common ground return. downloaded from: http:///
78q8430 data sheet ds_8430_001 18 rev. 1.2 4 electrical specification 4.1 absolute maximum ratings operation above the maximum rating may permanently damage the device. table 12 : absolute maximum ratings parameter rating dc supply voltage (v cc - 0.5 to 4.0 vdc ) storage temperature - 65 to 150 c pin voltage (except txop/n and rxip/n) - 0.3 to ( v cc +0.6) vdc pin voltage (txop/n and rxip/n only) - 0.3 to ( v cc +1.4) vdc pin current 120 ma 4.2 recommended operation conditions unless otherwise noted all specifications are valid over these temperatures and supply voltage ranges. table 13 : recommended operating conditions parameter rating dc voltage supply ( v cc 3.3 0.17 vdc ) ambient operating temperature ( t amb - 40 to +85 c ) 4.3 dc characteristics table 14 : dc characteristics parameter symbol conditions min nom max unit supply current i v cc cc C = 3.3 v auto - negotiation 10bt (idle) 10bt (normal activity) 100btx C 124 110 230 165 C 150 140 250 190 C ma supply current i power - down mode cc C 14 45 ma downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 19 4.4 digital i/o characteristics table 15 : digital i/o characteristics parameter symbol conditions min nom max unit input voltage low v il C C 0.8 v input voltage high v ih 2. 0 C C v input current i il , i ih -1 C 1 a input cap acitance c in C 8 C pf output voltage low v i ol ol C = 8 ma C 0.4 v output voltage high ** v i oh oh 2.4 = - 8 ma C C v output transition time t c t l = 20 pf i oh C = -8 ma (h to z ) C 6 ns tri- state output leakage current * i type tri - state only z -1 C 1 a * *pmeb and intb are active low outputs requiring external pull - up resistors. v oh 4.5 analog electrical characteristics for these outputs is not specified. 4.5.1 100base - tx transmitter table 16 : mii 100base - tx transmit timing parameter condit ions min nom max unit peak output amplitude (|v p +|, |v p best - fit over 14 bit times; 0.4 db transformer loss - |) (see note below) 950 C 1050 mvpk output amplitude symmetry | v p +| | v p 0.98 -| C 1.02 output overshoot percent of v p +, v p C - C 5 % rise/f all time (t r , t f 10 - 90% of v ) p +, v p 3 - C 5 ns rise/fall time imbalance | t r - t f C | C 500 ps duty cycle distortion deviation from best - fit time - grid; 010101... sequence C C 250 ps jitter scrambled idle, internal oscillato r mode C C 1.4 ns note: measured at the line side of the transformer. test condition: trans former p/n: tla - 6t103. line termination: 100 ?1% 4.5.2 100base - tx transmitter (informative) table 17 : mii 100base - tx transmitter (informative ) parameter conditions min max unit return loss 2 < f < 30 mhz 30 < f < 60 mhz 60 < f < 80 mhz 16 ?? ? ?? ? ? mhz 30 f log 20 16 10 C db open - circuit inductance - 8 < i in 350 < 8 ma C h note: the specifications in the preceding table are included for information only. they are mainly a function of the external transformer and termination resistors used for measur ements. downloaded from: http:///
78q8430 data sheet ds_8430_001 20 rev. 1.2 4.5.3 100base - tx receiver table 18 : mii 100base - tx receiver timing parameter conditions min nom max unit signal detect assertion threshold 600 700 800 mvppd signal detect de - assertion threshold 300 350 400 mvppd differential input resistance C 20 C k ? jitter tolerance (pk - pk) 4 C C ns baseline wander tracking - 75 C +75 % signal detect assertion time not tested C C 1000 s signal detect de - assertion time not tested C C 4 s 4.5.4 10base - t transmitter table 19 : mii 10base - t tran smitter timing parameter conditions min nom max unit peak differential output signal (see note below) all data patterns 2.2 C 2.8 v harmonic content (db below fundamental) any harmonic all ones data not tested 27 C C db link pulse width C 100 C ns sta rt - of - idle pulse width last bit 0 last bit 1 C C 300 350 C C ns ns note: the manchester - encoded data pulses, the link pulse and the start - of - idle pulse are tested against the templates and using the procedures found in clause 14 of ieee 802.3. measured at the line side of the transformer. test condition: transformer p/n: tla - 6t103. line termination: 100 ?1% 4.5.5 10base - t transmitter (informative) table 20 : mii 10base - t transmitter (informative) parameter conditions min nom max unit output return loss 15 C C db output impedance balance 1 mhz < freq < 20 mhz 29 17 10 ? ?? ? ?? ? log f C C db peak common - mode output voltage C C 50 mv common - mode rejection 15 v pk C , 10.1 mhz sine wave applied to transmitter common - mode. all data seque nces. C 100 mv common - mode rejection jitter 15 v pk C , 10.1 mhz sine wave applied to transmitter common - mode. all data sequences. C 1 ns note: the specifications in the preceding table are included for information only. they are mainly a function of the external transformer and termination resistors used for measur ements downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 21 4.5.6 10base - t receiver table 21 : mii 10base - t receive timing parameter conditions min nom max unit dll phase acquisition time C 10 C bt jitter tolerance (pk - pk) 30 C C ns input squelched threshold 500 600 700 mvppd input unsquelched threshold 275 350 425 mvppd differential input resistance C 20 C k ? bit error ratio C 10 C - 10 common - mode rejection square wave 0 < f < 500 khz not tested 25 C C v downloaded from: http:///
78q8430 data sheet ds_8430_001 22 rev. 1.2 5 host interface timing specification 5.1 host interface cs data wr / oe addr memwait t su t sl t wt t hwt t hcs t ho t l t h t howt figure 8 : host interface timing diagram name description requirement min max t cs and addr setup time su cs and addr must be stable on or before the falling edge of wr / oe . 0 ns C t output settling time sl the maximum amount of time that it will take the memwait, or data when there is no memwait, outputs to become stable after the falling edge of wr / oe . C 13.7 ns t maximum wait time wt the maximum amount of time that the memwait output will held asserted. C 17 ck t wait hold time hwt the minimum amount of time that the wr / oe input must be held past the de - assertion of memwait. 10 ns C t cs hold time hcs the cs input must be stable low for the entire duration of the wr / oe low cycle. 0 ns C t addr and data hold time ho the addr and data inputs must be stable for no less than this amount of time after the falling edge of wr . 2.5 ck C t wr / oe min low pulse l the minimum amount of time that the wr / oe inputs must be held low. 2 ck C t wr / oe min high pulse h the minimum amount of time that the wr / oe inputs must be held high. 2 ck C note : on read cycles when memwait is asserted the data outputs will be val id before the de - assertion of mem wait. downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 23 5.1.1 synchronous mode timing t fall t rise busclk output delay output delay figure 9 : host bus output timing diagram busclk input t su t h figure 10 : host bus input timing diagram parameter symbol min nom max unit input setup time t 6 su C C ns input hold time t 6 h C C ns output fall delay t C fall C 8 ns output rise delay t C rise C 8 ns csb min low p 1 wl C C clk csb min high p 2 wh C C clk downloaded from: http:///
78q8430 data sheet ds_8430_001 24 rev. 1.2 5.1.2 bus clock timing t cyc t high t low v ih v il 80% 50% 20% figure 11 : bus clock timing parameter symbol sync 50 async 100 units min max min max busclk cycle time t 20 cyc C 10 C ns busclk frequency C C 50 C 100 mhz busclk high time t 8 high C 3 C ns busclk low time t 8 low C 3 C ns busclk slew rate C 1 3 1 3 v/ns 5.1.3 reset timing parameter symbol min nom max units resetb minimum duration t 1 reset C C clocks downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 25 6 functional description 6.1 internal block diagrams 6.1.1 internal digital block figure 12 presents an overview of the functional layers of the 78q8430. on the left side are the signals, which connect to the gbi bus. on the upper and middle right, the blocks that implement the mac side of the mii are shown. these blocks are connected to the embedded phy. on the lower right, conne ctions to the eeprom are shown. bus control emi address & data emi system mac mii transmit mac half duplex mac mii receive mii register controller eeprom/ rom control queue memory snoop controller network wake-up flow control queue read/write logic cam packet classify ctl controller memory manager rmon dma status register tx/rx packet status register que status register mac status register prom_cs prom_clk prom_do prom_di 4 queue write logic 1 queue read logic jtag ieee 1149.1 boundary scan trstb tdo tdi tms tclk memwait wrb/oeb csb endian[1:0] bootsz[1:0] waitmode clkmode busmode data addr pmeb intb resetb busclk figure 12 : internal digital block diagram 6.1.2 internal phy figure 13 shows the functional blocks of the internal 78q8430 phy. the signals sho wn on the left side are the internal mii signals to the mac. these signals are multiplexed wi th their respective external pins for use with an external phy device. the 78q8430 is not a two - port device. only one phy interface can be operational. downloaded from: http:///
78q8430 data sheet ds_8430_001 26 rev. 1.2 mii transmit logic 4b/5b encoder scrambler, parallel to serial 100m nrz/nrzi mlt3 encoder pulse shaper and filter parallel to serial manchester encoder tx clock generator utp driver txop txon utp receiver rxip rxin led0 led1 auto negotiation clock recovery carrier sense, collosion detect 10m serial to parallel descrambler, 5b/4b decoder manchester decoder, serial to parallel 100m clock reference xtlp/clkin xtln vcc gnd mii receive logic mii activity mii registers interrupt logic 10m adaptive equalizer, baseline wander, mlt3 decoder, nrzi/nrz led control logic link txa rxa coli 100bt 10bt fdx tx_clk txd[3:0] tx_en tx_er intr crs col rx_clk rxd[3:0] rx_dv rx_er mdc mdio figure 13 : internal phy block diagram on the right side are the signals, which connect to the status leds and a 1:1 isol ation transformer before connecting to an rj - 45 connector, or equivalent media components . 6.2 data queuing ethernet frame data in the 78q8430 is managed in queuing structures called ques. the host bus address space allocated for ques has enough space for eight, while the 78q8430 ci rcuit only implements five. ques are identified numerically, que0 through que7, ba sed on the registers in the que register space that are used to access them. que1, que6 and que7 are unimplemented and reserved for future use. a que allocates main buffer memory as needed and stores discrete frames as they are written into the que. the que then reads back frames in the same order that they were written and frees the main buffer memory. a que can contain a maximum of 125 frames at any one time. if a que is unable to allocate main buffer memory when writing a frame, the frame will be partial ly added to the que as a truncated frame. if a que is unable to allocate main buffer memory to star t a frame, the entire frame is dropped. the ques are divided into two categories: receive ques, that store recei ved frame data and transmit ques, that store transmit frame data. frames are written to a receiv e que by the mac and read out by the host. frames are written to a transmit que by the host and read out by the mac. que0 and que1 are receive ques (only que0 is implemented), and que2 through que7 are tra nsmit ques (que2 through que5 are implemented). writing to the transmit data register (tdr) for a receive que or reading from the read data register (rdr) for a transmit que is not supported and the result is undefined in this specification. the transmit ques are further divided into standard ques, as descri bed above, and static ques. static ques differ from the standard ques in that they can only contain a single fram e, and that frame must be 252 bytes or less in total size. unlike standard ques, static ques do not remove a frame when it is read from the que. once a frame is written to a static que, it can be r ead out any number of times and the static que will always read out the same one frame. if a second frame is written to a static que then it will replace the first as the one frame contained in the que. downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 27 the purpose of a static transmit que is to allow the host to configur e a frame that will need to be transmitted multiple time s or transmitted at a later time without any interaction with the host. transmit que2 and que5 are static ques. transmit que2 is best suited for mac control pause frames as it can be triggered to transmit by a main buffer watermark. transmit que5 is bes t suited to host not responding (hnr) frames as it can be triggered to transmit by a host interrupt timeout. when the mac transmitter is idle and ready to transmit a frame, it det ermines which que to read from on a priority basis. the lowest numbered que containing data that needs to be transm itted is selected by the mac, which means when more than one transmit que is ready, the one with the lowest number always gets priority. 6.3 host interface 6.3.1 reading receive data the status of th e frame at the top of the receive fifo can be obtained by reading the receive packet status register (rpsr) . the 16 lsbs of the rpsr contain a count of the total number of bytes that have entered the receive fifo for this frame. a value of zero means that there are no new frames in the receive fifo. as frame bytes enter the fifo, the count value is increm ented. however, the count value does not decrease the bytes read out of the read fifo such that the final value wil l always be the final frame size. the msb of the rpsr is the done bit. once the last byte in the frame has entered the receive fifo, the done bit is set indicating that the count value contained in the total bytes field now contains the final size in bytes of the frame and the error status and classification fields n ow contain the final frame status. when the done bit is asserted, this also indicates that the status for this frame h as been removed from the receive status fifo and future reads of the rpsr will refer to the next frame in the receive fifo, even if all of the data for the current frame has not been retrieved. the frame data is read from the receive fifo 32 bits at a time by success ive reads to the receive data register (rdr) . if the frame length is not an even multiple of 4 bytes then the final read of the rpdr register for that frame will be padded with zeros. 6.3.2 writing transmit data a transmit que is initialized by writing to its packet control word register (pcwr) . this will assign an id to the frame and select various transmission options. the frame size must then be set by writing to the que packet size register (pszr) . transmit data is then written to the transmit fifo 32 bits at a tim e via successive writes to the transmit data register (tdr) . if more bytes are written to the tdr than indicated n the pszr, the excess bytes are ignored. writes to the tdr past the end of the frame, however, will trigger a transmit fifo overrun interrupt condition. similarly, if a new frame is initialized by a write to the pcwr before the frame length counter is expired, a transmit fifo under - run interrupt condition will result and the previous frame will be aborted. i f there is any question, the pszr can be queried for the remaining number of bytes expected in the previous frame before a new frame is initialized. in the event that the host wishes to terminate a frame early without triggering a n under - run interrupt and aborting the frame, or if the size of the frame is not initially known , the pszr can be rewritten at any time before the end of the frames transmission. as an example, no matter what the current value of the pszr is, if it is written with a value of one then the next write to the tdr will add one byte to the completed frame. conversely, if the frame byte counter is about to expire then writing a larger value to the pszr will extend the frame. it is an error to write a value of zero to t he pszr and the circuit behavior in this case is undefined. as each frame egresses the transmit fifo, its status is placed in the t ransmit status fifo. transmit frame status is recovered by reading the transmit packet status register (tpsr) . the packet id field from the pcwr is also placed in the tpsr such that the status can be associated with the exact frame to which it belongs. downloaded from: http:///
78q8430 data sheet ds_8430_001 28 rev. 1.2 6.3.2.1 using the setup transmit data registe r the setup transmit data register (stdr) can be used to control the way in which 32 - bit data words are transferred to the transmit fifo. the stdr can be changed on a word - by - word basis to change the network endianness or buffer - byte - alignment, or the stdr can be used to setup the transfer of an entire buffer of transmit data. a new frame must be initialized by a write to t he pcwr before the stdr is setup for transferring frame data to the que. the count field of the stdr contains one less than the number of writes to the tdr that will be needed to complete the transfer of the buffer. the start offset field contains the num ber of bytes in the first write to the tdr to ignore. the end offset field contains the number of bytes in the last writ e (when the count field is equal to zero) to ignore. table 22 : transm it data buffer example 32 - bit write data transmit order: byte -1 byte -2 byte -3 byte -4 start offset = 2 x x b1 b2 b3 b4 b5 b6 count decrements for each write b b n-4 b n-3 b n-2 n-1 end offset = 3 b x n x x notes: 1. the end offset will continue to be applied as long as the count field of the stdr contains zero. if a non - zero end offset is used, it must be cleared at the end of the block transf er. 2. the count field must expire before the pszr e xpires. frames that are entirely contained within one block should not use the end offset. instead, use the pszr to clip the last write to the tdr . the endian field of the stdr is used to set the transmit order of the data written on the bus, or how host bus write data bytes are mapped to transmit buffer bytes. if the endian bit i s set then the most significant byte of the host bus as defined by the logical endianness, is mapped to the first transmitted byte in the buffer, otherwise, the least significant byte is mapped to the first transm itted byte. 6.3.2.2 preloading transmit data a transmit que signals the mac transmitter that it is ready to transmit by asserting the que da ta ready bit (qdr) in its que status register (qsr) . the default behavior of the qdr for a transmit que is to assert anytime the que contains any data. this means that a transmit q ue can potentially begin transm itting as soon as the first block is added to the que. once the que begins transmitting, data for the packet being transmitted must be added to the que faster than the transmit ter removes it or a tx fifo under - run condition will eventually abort the packet (see tpsr ). in the event that interrupt latency, host bus performance, or other issues may prevent the host from loading data into the que faster than it is removed by the mac, the qsr can be used to modify the qdr behavior and prevent an under - run condition on the que. bits 25 and 24 of the qsr are the mode field. the default setting for the mode field is 00b. in this mode the qdr bit is set anytime the que contains at least one block. in this mode, the host must be diligent in keeping the que p opulated with data to avoid a tx fifo under - run condition in the mac. if the mode setting is 01b then the qdr bit for the que is set only when the number of blocks in the que is above the value indicated by the threshold field. this will allow the host to fill the que up to the threshold level at its leisure without risk of a tx fifo under - run. the drawback to this mode is that a smal l packet that uses fewer than the threshold number of blocks will be stran ded in the que until more data is added to the que to bring the total number of blocks up and over the thr eshold. downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 29 if small packets are a problem, then the mode setting of 10b can be used. in this mode, the qdr bit for the que is set only when there is an eof in the que, or in other words, t he que contains at least one entire frame. in this mode, tx fifo under - runs are not possible since the que will not begin to transmit until it contains the entire frame. the draw - back to this mode is with very large frames. if a frame is too large to fit into the que all at one time then it will never begin transmitt ing and the que will be stalled. if both small and large packets are to be handled then a mode setting of 11b should be us ed. in this mode, the qdr bit for the que is set anytime there is an eof in the que or the number of blocks in the que is above the threshold. in this way, large packets can preload a fix ed number of blocks while small packets are guaranteed to transmit. to facilitate the handling of very large packets by a fast host, an interrupt that is tied to the qsr threshold is provided. to make use of this, the host sets the threshold f ield based on the interrupt latency. the host then preloads the que with some number of blocks. as s oon as the total number of blocks left in the que falls below the threshold, an interrupt is generated. in response to the int errupt the host writes more data to the que to put the number back above the threshold. the host can then go on to other tasks until the next interrupt. this cycle is repeated until t he frame is completed. 6.3.3 dma slave mode access reading or writing large amounts of data into and out of a single que involves acc essing the same rdr or tdr register repeatedly. a dma slave mode is implemented to facilitate this activity and reduce overhead on the host side. while in dma slave mode, the address bus on the host int erface is ignored and all access is assumed to be to the programmed address until dma mode is t erminated. in this way the host can use a dma engine or block transfer facility to write or read que data without regard to the addresses generated. dma slave mode is controlled by the dma register ( dma ) at address 0x100. to read data from a que using dma slave mode, the host writes the address of the rdr for the desired que into bits nine through zero and sets bit 17, the read mode bit, in the dma register at address 0x100. the host then starts the dma transfer and all read access to the host interface will go to the programmed rdr address. when the dma transfer is complete, the dma mode is terminate d by writing a zero to bit 17 of the dma register ( dma ). to write data to a que using dma slave mode, the host writes the address of the tdr for the desired que into bits nine through zero and sets bit 16, the write mode bit, in the dma register . the host then starts the dma transfer and all write access to the host interface will go to the programmed tdr address. when the dma transfer is complete, r eading the cleared write mode bit from the dma register terminates the dma mode. dma slave mode does not have any effect on other operations of the interface such that, for example, the endian settings, stdr settings, etc. are all in effect during a dma mode transfer. during a dma mode transfer, the actual register address of the ho st bus access is ignored. this means that using dma slave mode to transfer data out of order is not supported. data words must alway s be written to a transmit que in the desired transmit order and are always read from a recei ve que in received order. 6.4 sn oop mode access the snoop interface provides a means by which que data can be inspected and modif ied in situ , leaving the state of the que unchanged. the snoop interface works by presenting the contents of a specific block of que memory at the snoop address space 0x300 - 0x3ff. the snoop control register (sncr) is used to set which block of que memory is mapped into the snoop addres s space. for example, an application that wishes to inspect or modify the contents of t he first frame in the receive que, que0, first reads the value of the first block in que0 from its qflr register ( qflr ). the pointer to the first block in que0 is then written to the sncr register. now tha t the sncr register has programmed the snoop interface to point to the first block for que0, accessing registers in the address space from 0x300 to 0x3ff will be directly accessing the data for the first frame contained in que0. downloaded from: http:///
78q8430 data sheet ds_8430_001 30 rev. 1.2 snoo ping the contents of a frame before it is read out of the receive que can be us eful if additional inspection of the frame is needed, beyond what is provided by classificati on, to determine the disposition of a received frame. it can also be used, in conjunction with the que transf er feature, to minimize host bus overhead in responding to simple arp or icmp requests. in this case, the host can use the snoop interface to modify a received arp or icmp request and convert it into the appropriate response, whi le the frame is still resident in the receive que. the que transfer fe ature is then used to transfer the response directly to a tx que and transmit it back to the source without having to read the entire frame into host memory. 6.5 water marking the timers module (see section 6.8 ) monitors the number of free memory blocks in the system input. there are three watermarks (interrupt, pause and headroom), accessed via the water mark values registe r (wmvr) , which can be used to manage memory usage based on the size of the free memory pool. 6.5.1 interrupt watermark when the number of free blocks falls below the interrupt threshold, the wate r mark interrupt in the hir is triggered. an interrupt threshold setting of zero disables this feature. 6.5.2 pause watermark when the number of free blocks falls below the pause threshold, the qdr bit for the pause que triggers the transmission of the pause frame. a pause threshold setting of zer o disables this feature. 6.5.3 headroom watermark when the number of free blocks falls below the headroom threshold then the mac receiver is halted causing the mac to drop any frames received after completion of the current f rame. this condition is cleared once the number of free blocks rises back above the threshold. this prevents a saturated receiver from consuming all free memory thereby locking out the local transmi tter. a headroom setting of zero disables this feature. 6.6 counters a block of hardware counters is implemented to allow monitoring transmit and r eceive statistics. these counters are accessed and managed by using the count data register (cdr) , the counter control register (ccr) and the counter management register (cmr) . 6.6.1 summary of counters table 23 provides a summary of all counters by address. counters at addresses 0x00 through 0x0e are transmit counters. counters at addresses 0x0f through 0x27 are receive count ers. table 23 : counter summary counter address counter description 0x00 transmitted packets, 0 collisions, not deferred or excessive deferred 0x01 transmitted packets, 1 collision 0x02 transmitted packets , 2 - 15 collisions 0x03 excessive collisions 0x04 deferred transmissions 0x05 late collisions 0x06 mac errors (tx under - run or transmit halted) 0x07 lost carrier sense errors 0x08 excessive deferrals 0x09 total packets transmitted 0x0a multicast pac kets downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 31 counter address counter description 0x0b broadcast packets 0x0c sqe errors 0x0d pause packets transmitted 0x0e transmitted bytes 0x0f received packets, 63 bytes or less 0x10 received packets, 64 bytes 0x11 received packets, 65 to 127 bytes 0x12 received packets, 128 to 255 bytes 0x13 received packets, 256 to 511 bytes 0x14 received packets, 512 to 1023 bytes 0x15 received packets, 1024 to 1518 (1522 for vlan tag) bytes 0x16 received packets, 1519 bytes or more (1523 or more for vlan tag) bytes 0x17 crc error and no alignment error 0x18 alignment errors 0x19 fragment errors (less than 64 bytes with crc or alignment error) 0x1a jabbers (greater than 1518 or 1522 and crc or alignment error) 0x1b mac errors 0x1c dropped packets 0x1d classification dropped packet 0x1e total received packets with no errors 0x1f total received multicast packets with no errors 0x20 total received broadcast packets with no errors 0x21 range errors (length field <= 1500 and received data <= 1500 and not control packet and length field does not match data bytes received and unpadded packet and no crc/alignment errors 0x22 out of range count (length field > 1500 and not control packet 8808) 0x23 total received vlan packets with no errors 0x24 total received pause packets with no errors 0x25 t otal received control packets with no errors 0x26 total received bytes with no errors 0x27 total received bytes with errors but not jabber nor fragment 6.6.2 reading and setting counter values before any counters can be accessed, the ccr value must be set appropriately. bits 0 to 5 of the ccr are the address field. these bits must contain the address of the first counter to be accessed. bit eight of the ccr is the access mode bit. when the access mode bit is clear, the access mode is read. when the access mode bit is set, the access mode is write. bit nine of the ccr is the clear on read bit. the clear on read bit is only relevant when the access mode is read. when the clear on read bit is set, then the counter values are automatically reset to zero after the counter value is read. if a countable event occurs at the same time as the reset, then the counter value is reset to one such that no countable events are missed. bit ten of the ccr must always be set. once the ccr has been configured for the desired counter access, the cdr is used to gain access to the actual counter values. when the ccr access mode bit is cleared for read, only read access to the cdr is allowed, and a read of the cdr will return the value of the counter specified by the ccr address field. when the ccr access mode bit is set to write, only write access to the cdr is allowed, and the value written to the cdr will be written to the counter at the address specified by the c cr address field. the ccr address field value is automatically incremented after each read or write acc ess to the cdr allowing many counters to be accessed through repeated reads or writes on the cdr without the need to reconfigure the ccr each time. when writing a value to a counter, if a countable event occurs at the downloaded from: http:///
78q8430 data sheet ds_8430_001 32 rev. 1.2 same time then the actual value placed into the counter is the cdr value plus one to prevent the loss of any countable events. 6.6.3 precision counting applications that require a high degree of temporal precision across all the coun ters can use the cmr for this purpose. bit two of the cmr is the freeze bit. the freeze bit can be used when the values of many or all c ounters must be known at an exact point in time. setting the freeze bit in the cmr will cause all counters to stop counting at that moment. any countable events that occur after the freeze bit is set are stored in an event fifo. after the application has set the cmr freeze bit, it should read all the counter values as quickly as possible. the event fifos are deep enough to hold off countable events for up to 28 microseconds assuming minimum sized frames are ingressing and or egress ing at full 100 mbps data rate, or 280 microseconds for 10 mbps. when the application has finished reading t he counter values, it should clear the cmr freeze bit. all of the events stored in the fifos will be counted at t hat time. if any event fifo fills before the application has cleared the cmr freeze bit, then the hardware will auto - clear the freeze condition and count all events in the event fifos. to check for this condition, the application can query the cmr freeze bit before clearing it. if it is already clear then the freeze c ondition had to be cleared by hardware in order to avoid losing any counts. in this case, not al l of the counters read are guaranteed to be at their frozen value. in the case that the application wants to start all the counters counting at the sam e time, the cmr provides a clear receive bit and a clear transmit bit. these bits are wri te only, they will always read back zero. when one is set, it causes all the read or write counters to be reset to zero at exactly the same time. 6.6.4 rollover interrupts for applications that only need a much more coarse counter treatment, rollover interrupts are provided for each counter. the counter rollover interrupts can be individually enabled or disabl ed for each counter. in some cases it may be desirable to preload a counter with a nonzero value to set how many counts , it will take to roll the counter and trigger an interrupt. the rollover indication for transmit counters zero through fourteen are bits z ero through fourteen of the trir respectively. the rollover indication for receive counters fift een through thirty - nine are bits zero through twenty - four of the rrir respectively. each transmit and receive rollover bit can be individually enabled or disabled in terms of triggering a host interrupt. when a rollover bit is set then the rmon bit of the hir wi ll be set unless the mask bit corresponding to the rollover bit is clear. the rmon bit of the hir w ill, in turn, trigger a host interrupt when its corresponding mask bit is set. 6.7 packet classification the packet classification engine is comprised of a content addressable memory (c am) linked to control logic (wcs), which is responsible for acting on the cam result and generating the next cam reference word. the wcs applies the first byte of packet data to the cam using a previ ous hit value of zero. the resulting cam address is then used to index a control word for the control logic to process. the control logic then uses the control word along with the cam address and the next packet byte t o generate another reference word to apply to the cam. this process iterates until the packet is done or the control word calls for completion. the final classification result is the address of the last cam hit. downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 33 data byte wcs cam reference word cam address control signals eof figure 14 : classification architecture the cam is a 128 - word by 15 - bit wide content addressable memory. when a reference data word is applied to the cam, the result is the highest numbered address that contains a da ta word that matches the reference. each data word contained in the cam also contains 15 mask bits that conditionally disable individual data bits from preventing a match. address 0 is reserved and can never match such that no reference data can ever result in a cam address of zero. address 1 is als o reserved and always matches such that a reference word that does not match any entry in the cam will give a result of one. associated with each cam entry is a control word. when a reference dat a word is presented to the cam and an address results, the control word associated with that address is pas sed to the control logic that determines the next action taken by the packet classifier. the control logic can execute any of the following actions: ? set the most significant byte of the pause counter. ? set the least significant byte of the pause counter. ? start the pause timer. ? cause the packet to be dropped. ? wake the host from power down mode (starts the hnr timer ). ? interrupt the host. ? manipulate the classification result reported in the rpsr . ? identify multicast/broad cast frames for rmon statistics. ? identify the len/type field for frame size checking. ? identify the ip header for checksum checking. to facilitate classification, the control logic contains a general purp ose 8 - bit register, x and a 5 - bit counter, c. t he x register can be used to store a packet byte or a cam result for l ater use. the counter can be used as a loop index to iterate a set of rules a fixed number of ti mes. the toc action is used to set the counter and the dec action is used to decrement the counter. when a dec action causes the counter to expire, the loop is broken by decrementing the actual cam addr ess of the rule that executed the dec action for the purposes of the next cam reference word. to prevent ambiguity, t he rule immediately below a rule that uses the dec action should generally not be used. additionally, the control logic is responsible for generating the next 15 - bit cam match word by concatenating the next 8 - bit packet data byte or the x register value with the 7 - bit address of the current cam match. at the beginning of the packet, the previous cam match is initiali zed to zero as is the control logic x register. the cam address of zero is reserved and will never result from a cam match such that the first data byte in the frame is guaranteed to be the only byte that is accompanied by a zero value for the previous hit. in other words, a cam rule with a specifi ed value for the previous hit of zero will only match the first byte of the frame. downloaded from: http:///
78q8430 data sheet ds_8430_001 34 rev. 1.2 6.7.1 address filtering the 78q8430 cam is loaded upon reset with a set of default rules for users w ho only want to use the address filter feature (see section 6.7.4 ). the following rules are intended as a template to provide address - filtering functionality. they support four multicast and eight unicast address filters. the last unicast address filter rule is configured by default as a promiscuous mode r ule such that the address - filter is in promiscuous mode right out of reset. 6.7.1.1 promiscuous mod e off in promiscuous mode, all addresses are passed on to the host driver. this m eans that, as long as promiscuous mode is enabled, none of the other address filters are effective. promiscuous mode must therefore be disabled before any address filtering can happen. the following procedur e should be used to deactivate promiscuous mode: step 1. change the match control field of rule 0x30 from md to drop. this will cause any frame with an address that does not match any other address filter to be dropped. 6.7.1.2 promiscuous mode on the promiscuous mode filter is a filter with all address bits masked as wildcard bits such that any address will match. turning promiscuous mode on and off is the same as changing the promi scuous mode filter from a positive filter to a negative filter (see section 6.7.1.5 ). the following procedure should be used to activate promiscuous mode: step 1. change the match control field of rule 0x30 from drop to md. this will cause all frames to pass the address filters. 6.7.1.3 unicast address filters the default cam rule set supports eight unicast address filters. the first, unicast filt er #0, is the promiscuous mode filter and is reserved for that purpose. the remaining sev en are general use. each filter has two components, the 48 - bit addre ss that it matches and a mask that defines which bits of the address are relevant and which bits are wildcards. each byte of each address filter has a rule assigned to it. the following table summarizes the association of unicast filt er bytes and cam rul es. table 24 : cam rules associated with unicast filter bytes byte [0] byte [1] byte [2] byte [3] byte [4] byte [5] u/c filter #7 0x77 0x6f 0x5f 0x57 0x47 0x37 u/c filter #6 0x76 0x6e 0x5e 0x56 0x46 0x36 u/c filter #5 0x75 0x6d 0x5d 0x55 0x45 0x35 u/c filter #4 0x74 0x6c 0x5c 0x54 0x44 0x34 u/c filter #3 0x73 0x6b 0x5b 0x53 0x43 0x33 u/c filter #2 0x72 0x6a 0x5a 0x52 0x42 0x32 u/c filter #1 0x71 0x69 0x59 0x51 0x41 0x31 note: bytes are in network transmit order starting wit h byte [0]. downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 35 for an arbitrary unicast filter number n , the following procedure should be used to set the address and mask values: step 1. write address and mask byte [0] to the cam. cam rule 0x70+ n shou ld be written as shown in the following table: re g. field value to write car addr 0x70+ n rmr data match value of mac address byte [0] data mask value of mask byte [0] from the wild card setting (0xff is for a perfect match) previous hit match 0x00 to disable the filter previous hit mask 0x00 rcr byte offset retain default: 0x00 interrupt retain default: 0 control logic action retain default: nop match control retain default: md step 2. write address and mask byte [1] through byte [4] to the cam. for each byte the cam rule indicated by table 24 based on the filter number , n, and byte number should be written as follows. reg. field value to write car addr byte [1]: byte [2]: byte [3]: byte [4]: 0x68+ n 0x58+ n 0x50+ n 0x40+ n rmr data match value of mac address byte [1] byte [4] data mask value of mask byte [1] . . . byte [4] previous hit match value of the cam rule used by the previous byte previous hit mask 0x7f rcr byte offset retain default: 0x00 interrupt retain default: 0 control logic acti on retain default: nop match control retain default: md unlike the settings for byte [0], the previous hit mask field is set to 0x7f and the previous hit match field is always set to the value of the cam rule used by the previous byte. as an example, the previous hit mask fields for filter #1 would be 0x71, 0x69, 0x59 and 0x51, for byte [1] through byte [4] respectively. step 3. write address and mask byte [5] to the cam. cam rule 0x30+ n shou ld be written as follows. reg. field value to write car a ddr 0x30+ n rmr data match value of mac address byte [5] data mask value of mask byte [5] previous hit match set to the cam rule that was used for byte [4] (0x40+ n ). previous hit mask 0x7f rcr byte offset retain default: 0x00 interrupt retain def ault: 0 control logic action set to tax match control retain default: md downloaded from: http:///
78q8430 data sheet ds_8430_001 36 rev. 1.2 step 4. enable the filter. the unicast address filter is enabled by setting the previous hit mask field of the cam rule for byte [0] to 0x7f. this step must be done last to prevent an ingressing frame from matching a partial set of filter rules. all the rules for a filt er must be in place before enabling the filter. an address filter can be simply activated/deactivated by toggling the value of the p revious hit mask field for the byte [0] cam rule between 0x7f and 0x00 respectively. the promiscuous mode filter, filter #0, should not be deactivated in this way. it is important that step 1 deactivates the filter so that no frames ar e filtered using a partial filter setting before all relevant rules are written. step 4 reactivates the filt er once the new settings are in place. 6.7.1.4 multicast address filters the default cam rule set supports four multicast address filters. the first, multicas t filter #0, serves the same purpose as the promiscuous mode filter except it applies only to multicast addresses. the last, multicast filter #3, is the broadcast filter and is reserved for that purpose. t he second, multicast filter #1, is the pause filter and is setup by default to match the pause address. multicast filter #2 is unused by default and avail able for general use. each filter has two components, the 48 - bit address that it matches and a mask that defines which bits of the address are relevant and which bits are wildcar ds. each byte of each address filter has a cam rule assigned to it. table 25 summarizes the association of multicast filter bytes and cam r ules. table 25 : cam rules associated with multicast filter bytes byte [0] byte [1] byte [2] byte [3] byte [4] byte [5] m/c filter #3 0x7f 0x67 0x63 0x4f 0x4b 0x3f m/c filter #2 0x7e 0x66 0x62 0x4e 0x4a 0x3e m/c filter #1 0x7d 0x65 0x61 0x4d 0x49 0x3d note: bytes are in network transmit order starting with b yte [0]. for an arbitrary multicast filter number n , the following procedure should be used to set the address and mask values: step 1. write address and mask byte [0] to cam rule 0x7c+ n as follows. reg. field value to write car addr 0x7c+ n rmr data m atch value of mac address byte [0] 1 data mask value of mask byte [0] 1 previous hit match 0x00 to disable the filter previous hit mask 0x00 rcr byte offset retain default: 0x00 interrupt retain default: 0 control logic action setmc match contr ol retain default: md 1 the lsb of both address byte [0] and mask byte [0] must be set for multicast address filters. if the lsbs are not set then the address is not multicast and belongs in the unicast filter set. downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 37 step 2. write address and mask byte [1] through byte [4] to the cam. for each byte the cam rule indicated by table 5.7.2 based on the filter number and byte number should be writt en as follows. reg. field value to write car addr byte [1]: byte [2]: byte [3]: byte [4]: 0x64+ n 0x60+ n 0x4c + n 0x48+ n rmr data match value of mac address byte [1] byte [4] data mask value of mask byte [1] . . . byte [4] previous hit match value of the cam rule used by the previous byte 1 previous hit mask 0x7f rcr byte offset retain default: 0x00 in terrupt retain default: 0 control logic action retain default: nop 2 match control retain default: md 1 as an example, the previous hit match fields for filter #1 would be 0x7d, 0x65, 0x61 and 0x4d, for byte [1] through byte [4] respectively. 2 reg. an ex ception is byte [4] of the broadcast filter. multi cast filte r #3, byte [4] should have the control logic action field set to tax . step 3. write address and mask byte [5] to cam rule 0x3c+ n as follows. field value to write car addr 0x3c+ n rmr data match value of mac address byte [5] data mask value of mask byte [5] previous hit match set to the cam rule that was used for byte [4] (0x48+ n ). previous hit mask 0x7f rcr byte offset retain default: 0x00 interrupt retain default: 0 contro l logic action set to tax 1 match control retain default: md 1 it is important that step 1 deactivates the filter so that no frames are filtered using a partial filter setting before all relevant rules are written. step 4 reactivates the fi lter once the new settings are in place. exception : multicast filte r #3, byte [5] should have the a ction field set to setbc . step 4. enable the filter. the multicast address filter is enabled by setting t he previous hit mask fiel d of the cam rule for byte [0] to 0x7f. this step must be done last to pr event an ingressing frame from matching a partial set of filter rules. all the rules for a filter must be in place before enabling the filter. a multicast address filter can be simply activated/deactivated by toggling the value of the previous hit mask field for the byte [0] cam rule between 0x7f and 0x00 respectively. multi cast filter #0 should not be deactivated in this way. 6.7.1.5 negative address filters any address filter, either multicast or unicast, can be set as either a positive or negative filter. a positive filter is a filter that passes frames with a source mac address that m atches the filter. a negative filter is a filter that blocks frames with a source mac address that matches the filter. by default, all filters are positive acting. the following procedure is used to change a filter to negat ive action: step 1. change the match control field for the cam rule for byte [5] from md to drop . to change a filter back to a positive acting filter, change the same match cont rol field back to md. downloaded from: http:///
78q8430 data sheet ds_8430_001 38 rev. 1.2 6.7.2 configuring the cam the cam rules are accessed indirectly one at a time via the cam address register (car) . the contents of the rule whose number is indicated by the car are available for read and write via the rule match register (rmr) and the rule control register (rcr) . the rmr contains a template that the cam reference word must match in order to trigger the rule, and the rcr contains the control word that is passed to the control logic when the rule is triggered. 6.7.2.1 rule match register the rmr contains four fields that control when a rule is triggered: previous hit match and previous hit mask, data match and data mask. the mask fields are used to determine whic h bits in their respective match field are required to make a match and which bits are ignored. a mask b it value of one means that the corresponding match bit must be exactly equal to the same bit in the cam r eference word to trigger the rule. inversely, a mask bit value of zero means that the corresponding bit in the cam reference word is ignored. a special case is that all previous hit mask bits are ze ro. in this case, the rule is deactivated and can never be triggered. 6.7.2.2 rule control register the rcr contains four fields that control the actions taken by the control logic when the rule is triggered: byte offset, interrupt, action and match contr ol fields. rcr byte offset the byte offset field is generally used to skip over bytes in the frame t hat are not relevant to the current classification. when the byte offset is non - zero then the classification will skip the number of bytes indicated. the exception is when the toc action is used, in which case, the value of the byte offset field is used to initialize the control logic counter and no offset is applied. an offset value of 0x3f will skip just the right number of bytes to jump over the current ipv4 header. rcr interrupt when the interrupt bit in the rcr for a given rule is set, then the triggering of the rule will cause an hir classification interrupt. control logic action the value of the control logic action field in the rcr determines the action that will be taken by the control logic when the rule is triggered. table 26 : control logic actions hex value binary value name action take n 0x0 00000b nop no action taken. 0x2 00010b pause start the local pause timer. 0x4 00100b wake send a wake - up signal to the host and start the hnr timer . 0x6 00110b ipck start the ip header checksum check and the ip header co unter. 0x7 00111b tipo transfer ip header counter to offset. 0x8 01000b tdx x is assigned the value of the frame data. 0xa 01010b tax x is assigned the value of the current rule number. 0xc 01100b taxh the high - order nibble of x is assigned the value of the low - order nibble of the current rule number. 0xd 01110b taxl the low - order nibble of x is assigned the value of the low - order nibble of the current rule number. 0x10 10000b txa the classification result is assigned the value of x. 0x12 1 0010b tlxa the low - order nibble of the classification result is assigned the value of the low - order nibble of x. downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 39 hex value binary value name action take n 0x14 10100b thxa the high - order nibble of the classification result is assigned the value of the high - order nibble value of x. 0x15 10101 b setmc mark the frame as multicast for rx statistics purposes. 0x16 10110b vlan mark the frame as vlan tagged for length checking and statistics. 0x17 10111b setbc mark the frame as broadcast for rx statistics purposes. 0x18 11000b toc the control logic counter value is initialized to the value contained in the byte offset field. no offset is applied. 0x1a 11010b dec the control logic counter value is decremented. if the counter has reached zero then the control logic will decrement the previous hit value used to generate the next cam reference word by one. 0x1b 11011b mctl classify the frame as a mac control frame. this also sets the len/ type lsb. 0x1c 11100b tdph the pause counter most significant byte is set from the frame data. 0x1d 11101b tdl th the len/type most significant byte is set from the frame data. 0x1e 11110b tdpl the pause counter least significant byte is set from the frame data. 0x1f 11111b tdltl the len/type least significant byte is set from the frame data. rcr match control the value of the match control field will determine how the control logic gener ates the next cam reference word. table 27 : rcr match control value name action taken 00b done no more cam reference words are generated. no further c lassification is done for the current frame. 10b md the next frame data is used to generate the next cam reference word. 01b mx the x value is used in place of the frame data to generate the next cam reference word. 11b drop drop the frame. if this is executed within the first 128 bytes of the f rame then the entire frame is dropped from the que. no more cam reference words are generated. 6.7.3 frame format the following table shows the format of an ethernet frame. the fields are in t he order that the cl assification engine sees them, from left to right. the byte count for each f ield is specified on the bottom row of the table. table 28 : ethernet frame for classification destination address source address len/typ llc data crc (fcs ) hi lo user pad msb lsb 6 bytes 6 bytes 1b 1b 0- 1500b 46 - 0b 4 bytes if the len/type field contains a 16 - bit value that is less than 0x0600, the field is interpreted as a length field that specifies the number of bytes in the user field. if the value is greater than or equal to 0x0600, the type interpretation is to be used. 6.7.4 default cam rule summary this section provides the default rules that the 78q8430b cam is loaded with o n reset. downloaded from: http:///
78q8430 data sheet ds_8430_001 40 rev. 1.2 6.7.4.1 destination address table 29 contai ns the rules processing destination address, which also includes the pause pa cket and promiscuous mode. table 29 : process destination address rules rule# prevhit ph - mask data d- mask next offset action interrupt comment 0x7f 0x00 0x7f 0xff 0xff md 0x00 setmc 0 0x7e 0x00 0x00 0x00 0x00 md 0x00 setmc 0 0x7d 0x00 0x7f 0x01 0xff md 0x00 setmc 0 0x7c 0x00 0x7f 0x01 0x01 md 0x00 setmc 0 0x7b 0x00 0x00 0x00 0x00 md 0x00 nop 0 not used 0x7a 0x00 0x00 0x00 0x00 md 0x00 nop 0 not used 0x79 0x00 0x00 0x00 0x00 md 0x00 nop 0 not used 0x78 0x00 0x00 0x00 0x00 md 0x00 nop 0 not used 0x77 0x00 0x00 0x00 0x00 md 0x00 nop 0 0x76 0x00 0x00 0x00 0x00 md 0x00 nop 0 0x75 0x00 0x00 0x00 0x00 md 0x00 nop 0 0x74 0x00 0x00 0x00 0x00 md 0x00 nop 0 0x73 0x00 0x00 0x00 0x00 md 0x00 nop 0 0x72 0x00 0x00 0x00 0x00 md 0x00 nop 0 0x71 0x00 0x00 0x00 0x00 md 0x00 nop 0 0x70 0x00 0x7f 0x00 0x00 md 0x00 nop 0 0x6f 0x77 0x00 0x00 0x00 md 0x00 nop 0 0x6e 0x76 0x00 0x00 0x00 md 0x00 nop 0 0x6d 0x75 0x00 0x00 0x00 md 0x00 nop 0 0x6c 0x74 0x00 0x00 0x00 md 0x00 nop 0 0x6b 0x73 0x00 0x00 0x00 md 0x00 nop 0 0x6a 0x72 0x00 0x00 0x00 md 0x00 nop 0 0x69 0x71 0x00 0x00 0x00 md 0x00 nop 0 0x68 0x70 0x78 0 x00 0x00 md 0x00 nop 0 0x67 0x7f 0x7f 0xff 0xff md 0x00 nop 0 0x66 0x7e 0x00 0x00 0x00 md 0x00 nop 0 0x65 0x7d 0x7f 0x80 0xff md 0x00 nop 0 0x64 0x7c 0x7c 0x00 0x00 md 0x00 nop 0 0x63 0x67 0x7f 0xff 0xff md 0x00 nop 0 0x62 0x66 0x00 0x00 0x00 md 0x00 nop 0 0x61 0x65 0x7f 0xc2 0xff md 0x00 nop 0 0x60 0x64 0x7c 0x00 0x00 md 0x00 nop 0 0x5f 0x6f 0x00 0x00 0x00 md 0x00 nop 0 0x5e 0x6e 0x00 0x00 0x00 md 0x00 nop 0 0x5d 0x6d 0x00 0x00 0x00 md 0x00 nop 0 0x5c 0x6c 0x00 0x00 0x00 md 0x00 nop 0 0x5b 0x6b 0x00 0x00 0x00 md 0x00 nop 0 0x5a 0x6a 0x00 0x00 0x00 md 0x00 nop 0 0x59 0x69 0x00 0x00 0x00 md 0x00 nop 0 0x58 0x68 0x78 0x00 0x00 md 0x00 nop 0 downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 41 rule# prevhit ph - mask data d- mask next offset action interrupt comment 0x57 0x5f 0x00 0x00 0x00 md 0x00 nop 0 0x56 0x5e 0x00 0x0 0 0x00 md 0x00 nop 0 0x55 0x5d 0x00 0x00 0x00 md 0x00 nop 0 0x54 0x5c 0x00 0x00 0x00 md 0x00 nop 0 0x53 0x5b 0x00 0x00 0x00 md 0x00 nop 0 0x52 0x5a 0x00 0x00 0x00 md 0x00 nop 0 0x51 0x59 0x00 0x00 0x00 md 0x00 nop 0 0x50 0x58 0x78 0x00 0x00 md 0x00 nop 0 0x4f 0x63 0x7f 0xff 0xff md 0x00 nop 0 0x4e 0x62 0x00 0x00 0x00 md 0x00 nop 0 0x4d 0x61 0x7f 0x00 0xff md 0x00 nop 0 0x4c 0x60 0x7c 0x00 0x00 md 0x00 nop 0 0x4b 0x4f 0x7f 0xff 0xff md 0x00 tax 0 0x4a 0x4e 0x00 0x00 0x00 md 0x00 nop 0 0x49 0x4d 0x7f 0x00 0xff md 0x00 nop 0 0x48 0x4c 0x7c 0x00 0x00 md 0x00 nop 0 0x47 0x57 0x00 0x00 0x00 md 0x00 nop 0 0x46 0x56 0x00 0x00 0x00 md 0x00 nop 0 0x45 0x55 0x00 0x00 0x00 md 0x00 nop 0 0x44 0x54 0x00 0x00 0x00 md 0x00 nop 0 0x43 0x53 0x00 0x00 0x00 md 0x00 nop 0 0x42 0x52 0x00 0x00 0x00 md 0x00 nop 0 0x41 0x51 0x00 0x00 0x00 md 0x00 nop 0 0x40 0x50 0x78 0x00 0x00 md 0x00 nop 0 0x3f 0x4b 0x7f 0xff 0xff md 0x00 setbc 0 bc 0x3e 0x4a 0x00 0x00 0 x00 md 0x00 tax 0 0x3d 0x49 0x7f 0x01 0xff md 0x00 tax 0 pause 0x3c 0x48 0x7c 0x00 0x00 md 0x00 tax 0 mc 0x3b 0x00 0x00 0x00 0x00 md 0x00 tax 0 not used 0x3a 0x00 0x00 0x00 0x00 md 0x00 tax 0 not used 0x39 0x00 0x00 0x00 0x00 md 0x00 tax 0 not us ed 0x38 0x00 0x00 0x00 0x00 md 0x00 tax 0 not used 0x37 0x47 0x00 0x00 0x00 md 0x00 tax 0 0x36 0x46 0x00 0x00 0x00 md 0x00 tax 0 0x35 0x45 0x00 0x00 0x00 md 0x00 tax 0 0x34 0x44 0x00 0x00 0x00 md 0x00 tax 0 0x33 0x43 0x00 0x00 0x00 md 0x00 tax 0 0x32 0x42 0x00 0x00 0x00 md 0x00 tax 0 0x31 0x41 0x00 0x00 0x00 md 0x00 tax 0 0x30 0x40 0x78 0x00 0x00 md 0x00 tax 0 promiscuous downloaded from: http:///
78q8430 data sheet ds_8430_001 42 rev. 1.2 6.7.4.2 source address filtering source address filtering can be used to drop frames with a specific addres s while passing all others. table 30 contains the rules on processing source address. table 30 : process source address rules rule# prevhit ph - mask data d- mask next offset action interrupt comment 0x2 f 0x30 0x70 0x01 0x01 drop 0x00 nop 0 mc drop 0x2e 0x30 0x70 0x00 0x00 md 0x05 nop 0 pass other 6.7.4.3 length/type field, mac control frames and ip header checksum table 31 contains the rules on processing length/type, mac control fr ames and start ip header checksum check. table 31 : process length/type, mac control frames and start ip header checksum rules rule# prevhit ph - mask data d- mask next offset action interrupt comment 0x2d 0x2b 0x7f 0x00 0xff md 0x02 vlan 0 0x2c 0x00 0x00 0x00 0x00 done 0x00 nop 0 0x2b 0x2e 0x7f 0x81 0xff md 0x00 tdlth 0 0x2a 0x2b 0x7f 0x00 0x00 done 0x00 tdltl 0 0x29 0x2f 0x7c 0x88 0xff md 0x00 tdlth 0 0x28 0x29 0x7f 0x08 0xff md 0x00 mctl 0 0x27 0x29 0x7f 0x00 0x00 done 0x00 tdltl 0 0x26 0x2f 0x7c 0x00 0x00 md 0x00 tdlth 0 0x25 0x26 0x7f 0x00 0x00 md 0x00 tdltl 0 0x24 0x25 0x7f 0x40 0xf0 md 0x00 ipck 0 0x23 0x24 0x7e 0x00 0x00 md 0x3f txa 0 0x22 0x28 0x7f 0x00 0xff md 0x00 nop 0 0x21 0x28 0x7f 0x00 0x00 d one 0x00 nop 0 0x20 0x22 0x7f 0x01 0xff md 0x00 nop 0 mctl pause 0x1f 0x22 0x7f 0x00 0x00 done 0x00 nop 0 mctl other 0x1e 0x20 0x7f 0x00 0x00 md 0x00 tdph 0 0x1d 0x1e 0x7f 0x00 0x00 mx 0x00 tdpl 0 0x1c 0x1d 0x7f 0x3d 0xff done 0x00 pause 0 0x1b 0 x1d 0x7f 0x00 0x00 done 0x00 nop 0 mctl pause with bad src 6.7.4.4 wake on lan the packet classification engine can use the wake action to signal the host t o come out of power down mode. this is used to implement the wake - on - lan feature. the power management control and status register (pmcsr) is used to control the hardware response to a wake action. if the ps field of the pmcsr is zero then all wake actions are ignored. the wake action is only honored if the part is currently in a power down mode as determined by the ps field. if the pme_enb bit in the pmcsr is set then a valid wake action will trigger the assertion of the pmeb primary output. if the pme_enb bit is clear then a valid wak e action will only result in the normal hir wake interrupt. when the host is notified of a valid wake event, either by the assertion of the pmeb primary output or assertion of intb via the wake hir interrupt, the rule that triggered the event can be read from the wake up status register (wusr). a valid wake event will also start the host not responding (hnr) timer. when the host is notified of a wake event, it must clear the ev ent by setting the pme bit in the downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 43 pmcsr. this action will clear the wake event and clear the wake bit in the hir and the pmeb primary output, if it was enabled. if the hnr timer expires before the host clears the wake ev ent then the qdr bit for que5 is set triggering the transmission of the hnr frame co ntained in que5. the length of the hnr timer is determined by the value contained in the host not responding count register (hnrcr). when configuring for wake on lan, the host should set the hnrcr with a val ue based on the longest anticipated interrupt service latency. onnow packets the onnow specification states that an onnow compliant node must be able to wak e up upon the reception of a frame that matches a reference frame with a byte mask applied. table 32 contains the rules on processing onnow packets. table 32 : process rules for onnow packet rule# prevhit ph - mask data d- mask next offset action interrupt comment 0x15 0x23 0x7f 0x54 0xff md 0x00 nop 0 0x14 0x15 0x7f 0x00 0x00 md 0x02 nop 0 0x13 0x14 0x7f 0x04 0xff md 0x00 nop 0 0x12 0x13 0x7f 0x05 0xff md 0x00 nop 0 0x11 0x12 0x7f 0x06 0xff md 0x00 nop 0 0x10 0x11 0x7f 0x07 0xff done 0x00 wake 0 magic packets a magic packet is defined to be a frame that contains a specific sequence of by tes anywhere in its user field. table 33 contains the rules on checking for the sequence in a frame and waking the host if it finds a magic packet. table 33 : process rules for magic packet rule# prevhit ph - mask data d- mask next offset action interrupt comment 0x0f 0x25 0x7f 0xff 0xff md 0x05 toc 0 bare ethernet 0x0e 0x23 0x7f 0xff 0xff md 0x05 toc 0 ip payload 0x0d 0x01 0x7f 0xff 0xff md 0x05 toc 0 offset payload 0x0c 0x0f 0x7c 0xff 0xff md 0x00 dec 0 0x0b 0x0b 0x7f 0xff 0xff md 0x00 nop 0 0x0a 0x00 0x00 0x00 0x00 done 0x00 nop 0 0x09 0x0b 0x7f 0x10 0xff md 0x0f toc 0 0x08 0x03 0x7f 0x10 0xff md 0x00 nop 0 0x07 0x08 0x7e 0x20 0xff md 0x00 nop 0 0x06 0x07 0x7f 0x30 0xff md 0x00 nop 0 0x05 0x06 0x7f 0x40 0xff md 0x00 nop 0 0x04 0x05 0x7f 0x50 0xff md 0x00 nop 0 0x03 0x0 4 0x7f 0x60 0xff md 0x00 dec 0 0x02 0x02 0x7f 0x00 0x00 done 0x00 wake 0 downloaded from: http:///
78q8430 data sheet ds_8430_001 44 rev. 1.2 6.8 timers the timers block implements several timers used within the system. watermarking for main memory is also handled in this block as it relates to the pause operation. 6.8.1 pause timer the pause timer is used to implement the mac control pause operation described in annex 31b of ieee std 802.3 - 2002. it consists of a 16 - bit counter that determines the duration of the pause state. the host can also trigger a local pause state via the start pause bit of the pdcr . 6.8.2 hnr timer the host not responding timer is used to notify remote nodes that have requested a wake - on - lan that the local host is not responding to the request. the host, knowing about how l ong it should take to wake, sets the value for how long to wait after a wake request for the host to c lear the interrupt before a timeout triggers the transmission of a host not responding packet. this value is s et in the host not responding count register (hnrcr) . the host can determine the wake status by reading the power management control and status register (pmcsr) . the default state is clear. the hnr counter is decremented on every system clock that it has a non - zero value. 6.8.3 interrupt delay timer the interrupt delay timer is used to delay the received data interrupt to the host. the host determines how long the delay should be by writing a value to the interrupt delay count register (idcr) . as noted above, the interrupt timer is using mac receive byte times as i ts unit of time. the value written to the idcr can therefore be thought of as the maximum number of bytes that could possibly be r ece ived between the time the first data was added to the que and when the received data i nterrupt is actually triggered. 6.9 eeprom controller the prom controller provides logic for reading and writing an optional external e eprom or rom device. the external devices supported are the microchip 93lc46b and the national nm93c46. timing comp atible devices, smaller devices and r ead - only equivalent devices are also supported. the basic sequences of events in accessing an external eeprom or serial rom are: ? system soft ware reads the busy bit to ensure the eeprom controller is not busy. ? on a write, the data should be written into the data register before setting the c ontrol register. ? software writes the address and the read/write flag and sets the busy bit. ? the cont rolle r completes the operation and clears the busy bit. ? on a read, when system software detects the busy bit is cleared, it can re ad the data register. 6.10 ethernet mac the mac consists of a transmit block, a receive block, a control regis ter, a flow control block and a serial controller for station management communications to the phy and the optional exter nal eeprom/rom. the mac also has a loop back circuit. 6.10.1 mac transmit block the mac transmit block moves the outgoing data from the mac transmit fi fo, enca psulate s it and passes it on to the mii interface logic in the phy. the transmit block has circuits for generating preamble and jam bytes, pad bytes, the crc value and error extension. the transmit block also has a timer for the back - off delay after a collision and a timer for the inter - packet gap after transmission. downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 45 6.10.2 mac receive block the receive block receives frames from the phy via the mii interfac e. it strips the preamble and sof and passes the remainder of the received frame data and error information to the ma c receive fifo. the mac receiver passes all frames received, including error frames and c ollisions. dropping of error frames is handled by the receive producer in the que logic. 6.10.3 mac control register the mac control register (mcr ) provides controls for network operation, including: ? enable and disable transmit and receive circuit, including requests to halt at end of current packet. ? enable and disable full duplex operation and loopback modes. ? enable and disable various mac featur es like excessive - deferral detection, sqe and crc checking. 6.10.4 transmitting a frame to transmit a frame, the transmit enable bit in the mcr must be set and the transmit halt request bit must be clear. the mac does not signal the dma engine to transfer bytes to the ma c transmit fifo. the que transmit controller controls the transfer of bytes to the mac tr ansmit fifo. the mac transmit block then starts transmitting the data in the fifo , but will retain the first 64 bytes until it has acquired the net. at that time, the mac transmit block will r equest more data and transmit it until the que transmit controller signals the end of the frame to be transmit ted. the mac transmit block generates pad bytes, if needed, appends the calculated crc to the end of the packet if requested and transmission stops. it s ets the completion bit in the transmit packet status r egister (tpsr) , signaling the end of a transmission, which may in turn cause an interrupt. if the qu e transmit controller indicates an error then the mac transmit block will transmit an mii error status and abort the frame. the mac transmit block does not begin transmission until the number of byt es indicated by the preload field of the pcwr are in the mac transmit fifo. this is to give the ip header checksum ge nerator a head start in generating the checksum. this may be needed since the checksum i s in the middle of the ip header but cannot be known until the entire header is summed. the results ar e undefined i f the header checksum is inserted into the frame after the checksum has already been transmitted. 6.10.5 ieee 802.3 transmit protocols 6.10.5.1 interpacket gap timing in half duplex mode, the gap state machine is responsible for counting the 96 bit ti mes from the de - asse rtion of the carrier sense signal, which is the inter - record gap. it breaks the 96 bit times for inter - record gap into the first 64 bits and the last 32 bits, in order to preci sely control the appropriate times for beginning trans mission. if there is a ny traffic within the first 64 - bit times, it resets the counter and resumes counting from zero. if there is any traffic within the last 32 bits, it continues counting and signals th e end at 96 bit times. in full duplex mode, the gap state machine starts counting at the end of transmission and signals the end at 96 bit times (12 byte times). 6.10.5.2 collision processing and back - off if the main transmit state machine detects a collision, it starts the ba ck - off state machine counters and waits for the end of the b ack - off slot, befo re retransmitting the collision causing packet again. each back - off slot is a multiple (including zero) of 512 bit times. each time ther e is a collision for the same packet, the back - off state machine increments an internal attempt counter. a pseudo - random number generator outputs a random number by selecting a subset of the value of the generator. the subset grows by one bit for each subsequent attempt. this implements the equation: 0 < r < 2 k , k = min. (n, 10) where r is the number of slot times that the mac has to wait in case of a collision, and n is the number of attempts. for example, after the first collision, n is 1 and r is a rand om number between 0 and 1. the pseudo - random - number generator in this case is one - bit wide and gives a random number of either 0 or downloaded from: http:///
78q8430 data sheet ds_8430_001 46 rev. 1.2 1. after the second attempt, r is a random number between 0 and 3; the state m achine looks at the two least significant bits of the generator (n = 2) which gives a value between 0 and 3. in order to improve the statistical independence between two macs using the same pseudo - random number generator, the mac uses values from the crc of previous succes sfully transmitted packets to modify the basic random number sequence. 6.10.6 transmit operation if there is data to be trans fer red, the inter - packet gap is ok and the mii is ready (there are no collisions and the device is either in full duplex mode or there is no crs), then the mac t ransmit block transmits the preamble fol lowed by the sfd. after the transmission of the preamble and the sfd, it transmits 64 bytes of data regardless of the packet length, unless short transmission is enabled. this means that if the packet is less than 64 bytes, it will pad the llc data field with zeroes, unl ess nopad is enabled. at the end of the packet, it appends the crc, unless nocrc generation is enabled. if ther e is any collision during the first 64 bytes (8 bytes of preamble and sfd and 56 bytes of the frame), it stops the transmission and transmits a jam pattern (32 bits of all ones). it increments the collision attempt counter, returns contro l to the back - off state machine and retransmits the packet when the back - off time has elapsed and the gap time is ok. if there is a collision after the first 64 bytes, it is reported as a lat e co llision and the packet is terminated with an error indication. the 78q8430 does not retry late collisions. if there are no collisions, the mac transmit block transmits the res t of the packet and at this time (after the first 64 bytes have been transmitted without collisions), it allows the dma engine to overwrite this packet. after transmitting the first 64 bytes, it transmits the rest of t he packet and appends the crc to the end. fifo under - run or more than 16 collisions will cause the state machine to abort the packet (no retry) and prepare for the next packet in the queue. in case of any transmission errors, the mac transmit block sets the appr opriate error bit in the tpsr and sends a bad tx signal to the interrupt controller. 6.10.7 receiving a frame to receive a frame, the receive enable bit in the mcr must be set and the receive halt bit must be clear. the mac receive block, when enabled, constantly monitors a data stream coming fr om the integrated phy. if th e mac is in loop back mode, the data stream will be going to the mac transm it block via internal connections. the mac receive block receives zero to seven bytes of preamble, followed by the start frame delimiter (sfd). the mac receive block checks that t he first data received is preamble and looks for the sfd in the first eight bytes. if the sfd is not the first non - preamble byte, it treats the packet as a fragment and discards it. when it has received a full byte, the mac receive block stores the byte and several status bits in the mac receive fifo which then signals that data is present. it receives subsequent bytes and stores them and their status in the fifo. if, during the frame recepti on, the receive fifo overflows, or the phy asserts mii_rx_er, or the frame ends on an odd nibble, the mac receive block sets the corresponding status bit for the byte in the fifo. the que receive controller reads bytes from the mac receive fifo, combines them into four - byte words, checks the crc, optionally dro ps th e padding and/or crc field and moves the data into the receive que. the que receive controller will never take bytes from the fif o on two consecutive clocks. the status bits from the receive fifo are held by the que receive controller for the receive sta tus fifo until the eof status bit from the fifo is true, at which time the final s tatus is added to the status fifo and the held status bits are all cleared in preparation for the next frame. the que receive controller will signal the receive producer to drop a frame if there is no room in the status fi fo when the frame arrives. this makes sure that there is a one - to - one relation between frames in the que and status words in the status fifo. downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 47 6.10.8 strip padding/fcs the strip - padding feature will remove any padding from 64 - byte frames. the strip - padding feature will also remove excess padding from frames up to 127 bytes in total length. frames t hat are 128 bytes or larger will never have any padding stripped. padded frames that have their padding r emoved by the strip - padding feature will also have their fcs field removed, even if the strip crc feature is not enabled. if the strip - padding feature is enabled but the strip crc feature is not, then frames recei ved that have no padding removed will still have their fcs field, but frames that have padding re moved will not. the crc is always checked even if it is removed by the strip padding feature and not t he strip crc feature. the strip crc feature will always remove the fcs field from all recei ved frames. the packet classification block snoops data bytes as they are popped from the rec eive fifo by the que receive controller. if the classifier determines that a frame is to be dr opped, the frame error bit to the receive producer is set and, assuming the first block of the frame has not been added, the frame is dumped before it is appended to the que. if the classification block deter mines that a frame is to be dropped after one or more blocks have been added to the que then the frame is trunc ated at that point a nd the remainder of the frame is dropped. 6.11 mac error reporting errors reported by the mac are communicated back to the host on a frame - by - frame basis through the transmit status fifo and receive status fifo. 6.11.1 mac transmit errors 6.11.1.1 transmit fifo underrun erro r the 80 - byte mac transmit fifo is capable of handling a worst - case que latency of 1.28 s (128 bit times, or 16 byte times) because 64 bytes are retained for possible retran smission after a collision. the que transmit controller has higher bandwidth than the 100 mb phy such that a mac transmit fifo under - run usually indicates a host bus latency problem. see section 6.3.2.2 for a discussion on how to mitigate this situation. in the event that the transmit fifo does under - run, the mac aborts the transmission, sets the underrun bit in the transmit status and discards the remainder of the frame when it finally does arrive. 6.11.1.2 lost carrier error in half duplex mode, carrier sense (crs) is monitored from the beginning of the start frame delimiter (sfd) to the last byte transmitted. a lost carrier condition indicate s that crs was never present or was dropped during transmission (a possible network problem), but transmission is not aborted. lost carrier error is disabled during loop back mode. during full duplex operation, crs is not passed to the transmit block and lost carrier will not be asserted. lost carrier sets the carri er bit in the transmit packet status register (tpsr) . 6.11.1.3 excessive collis ion error in half duplex mode, whenever the mac encounters a collision during transmit, it will back off, update the collision counter and try again later. when the counter equals 16 (16 attempts all resulted in a c ollision) transmission is aborted. excessive collisions probably indicate a networ k problem. excessive collision sets the excessive collision bit in the transmit packet status register (tpsr) . 6.11.1.4 late collision error (transmit out - of - window collision) in a correctly configured and operating network, the controller sees a colli sion (if there is one) within the first 64 bytes of data being transmitted. if a collision occurs after thi s time a possible network problem is detected. late collision sets the late collision bit in the transmit packet status register (tpsr) and transmission of the packet is aborted, i.e. late collisions are not retr ied. downloaded from: http:///
78q8430 data sheet ds_8430_001 48 rev. 1.2 6.11.1.5 signal quality error in 10 mbps mode, the mac checks for a heartbeat at the end of a transmitted pa cket. this is a short colli sion signal within the first 40 bit times after end of transmission. signal quality error sets the no heart beat bit in the transmit packet status register (tpsr) . 6.11.1.6 deferral in half duplex mode, during any attempt to send a packet, the mac may have to defer t he transmission because of a pre - occupied network. this is not an error, but is used as a network activi ty indicator, but only when collisions do not occur. deferral sets the deferral bit of the transmit packet status register (tpsr) . 6.11.1.7 excessive deferral in half duplex operation, the mac will defer transmission of frames when ther e is net work activity. if the deferral time is longer than two maximum sized frame times (2.4288 ms f or 10 - mbps operation or 0.24288 ms for 100 - mbps operation) then the excessive deferral bit of the transmit packet status register (tpsr) is set. if the tx enable bit of the mcr register (mcr) is c lear, then the transmission is aborted. excessive deferral indicates a possible network problem. 6.11.2 mac receive errors 6.11.2.1 alignment error at the end of reception, the mac receive block checks that the incoming pac ket has been correctly framed on a n 8 - bit boun dary. if it is not and the crc is invalid, data has been disrupted through the network and the mac receive block reports an alignment error. a crc error is also reported. the dangling byte bit and the crc bit are set in the receive packet status register (rpsr) . 6.11.2.2 crc error at the end of reception, the mac receive block checks the crc for validi ty and reports a crc error if it is invalid. 6.11.2.3 overflow error during reception, incoming data is put into the mac receive fifo before it is transferred to the que receive controller. if the mac receive fifo fills up because of exc essive system latency or other reasons, the mac receive block sets the overflow error of the receive packet status register (rpsr) and the remaining frame is dropped. 6.11.2.4 length error the mac receive block checks the length of the incoming packet at the end of r eception based on the value of the len/type field of the frame. if the length is specified in the len/ty pe field and the frame is longer than the maximum frame size of 1518 bytes, (1522 for vlan tagged packets), the mac receive block reports a length error, unless long frame mode is enabled. the mac wil l also flag as an error a mac control frame that is not exactly 64 bytes in length. 6.11.2.5 mii error the phy informs the mac if it detects a media error (such as codi ng violation) by asserting rx_er. when the phy asserts rx_er, the mac sets the mii error bit in the receive packet status register (rpsr) . downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 49 6.12 phy operations 6.12.1 automatic mdi/mdix cable crossover configuration the transmitter and receiver contain logic and mux to detect and correct for cross over cabling errors. the implementation is fully compliant with ieee 802.3 specifications, ensuring interoperation with other phys, which may or may not implement automatic mdi/mdi - x configuration. the automatic mdi/mdi - x state machine facilitates switching txn and txp pins with the rxn and rx p pins, prior to the auto - negotiation mode of operation. the correct polarization of the crossover circuit is determined by an algorithm that con trols the switchi ng function. use of an 11 - bit linear feedback shift r egister (lfsr) creates a pseudo - random sequence to determine the mdi configuration. upon making the selection to either mdi or mdi - x, the 78q8430 waits for a specified amount of time while evaluating its rec eive channel to determine whether the other end of the link is sending link pulses or 10ba se - t or 100base - tx data. if link pulses or data are detected, the 78q8430 remains in that conf iguration. if link pulses or data are not detected, it increments its lfsr and makes a decision to switch based on the value of the next bit. the state machine does not move from one state to another whi le link pulses are bein g transmitted. 6.12.2 100base - tx transmit the 78q8430 phy contains all of the necessary circuitry to convert the t ransmit mii signaling from a mac to an ieee - 802.3 compliant data - stream driving cat - 5 utp cabling. the internal pcs interface maps 4- bit nibbles fr om the mii to 5 - bit code groups as defined in table 24 - 1 of ieee - 802.3. the 5 - bit code groups are then scrambled and converted to a serial stream before being sent to the mlt - 3 pulse shaping circuitry and line driver. the pulse - shaper uses current modulation to produce the desired output waveform. controlled rise/fall time in the mlt - 3 signal is achieved using an accurately controlled voltage ramp generator. the line driver requires an external 1:1 isolation transform er to interface with the line media. the center - tap of the primary side of the transformer connects to the 3.3 v supply. 6.12.3 100base - tx receive the 78q8430 phy receives a 125 mbaud mlt - 3 signal through a 1:1 transformer. the signal then goes through a combination of adaptive offset adjustment (baseline wander correction) and adaptive equalization. the effect of these circuits is to sense the amount of dispers ion and attenuation caused by the cable and transformer and restore the received pulses to logic levels. the amount of gain and equaliz ation applied to the pulses varies with the detected attenuation and dispersion and, t herefore, with the length of the cable. the 78q8430 phy can compensate for cable loss of up to 10db at 16 mhz. this loss is represented as test_chan_5 in annex a of the ansi x3.263:1995 specification and corresponds to approximately 140 m of cat - 5 utp cabling. the equalized mlt - 3 data signal is bi - directionally sliced and the resulting bit - stream is presented to the cdr where it is re - timed and decoded to nrz format. the retimed serial data is converted to parallel, then de - scrambled and aligned into 5 bit code groups. the receive pcs interface maps these code groups to 4 bit data for the internal mii as outlined in clause 24 of ieee - 802.3. 6.12.4 10base - t transmit the 78q8430 phy takes 4 - bit parallel nrz data via the mii interface and passes it through a parallel to serial converter. the data is then passed through a manchester encoder, pre - emph asis pulse - shaper, media filter and finally to the twisted - pair line driver. the pulse shaper and filter ensures the output waveforms meet the output voltage template and spectral content requirements detailed in clause 14 of ieee - 802.3. interface to the twisted pair media is through a center - tapped 1:1 trans fo rmer. no external filtering is required. during auto - negotiation and 10base - t idle periods, link pulses are transmitted. the 78q8430 phy employs an on board timer to prevent the mac from capturing a net work through exces sively long transmissions. when this timer is exceeded the chip enters the jabber state and transmission is disabled. the jabber state is exited after the mii goes idl e for 500 ms 250 ms. downloaded from: http:///
78q8430 data sheet ds_8430_001 50 rev. 1.2 6.12.5 10base - t receive the 78q8430 phy receives manchester encoded 10base - t data through the twisted pair inputs and re - establishes logic levels through a slicer with a smart squelch function. the slicer automatically adjusts its level after valid data with the appropriate levels are detected. data is p assed on to the cdr where the clock is recovered and data is re - timed and passed through a manchester decoder. from here, data enter the serial to parallel converter for transmission to the mac via the m edia independent interface. interface to the twisted pair media is through a 1:1 transformer. polarity information is detected and corrected in internal circuitry. 6.12.6 sqe test the 78q8430 phy supports the signal quality error (sqe) function detailed in ieee - 802.3. at an interval of 1s after each negative transition of the txen pin in 10base - t mode, the col pin will go high for a period of 1s. sqe is not signaled if a collision is detected during tran smission. this function can be dis abled through register bit mr16.11. 6.12.7 polarity correction the 78q8430 phy is capable of either automatic or manual polarity reversal for 10base - t and auto - nego tiation. these features are controlled by the phy management register mr16, bit s apol and rvspol. the default is automatic mode, where apol is negated and rvspol i ndicates if the detection circ uitry has inverted the input signal. to enter manual mode, apol needs to be ass erted and then rvspol will control the signal polarity. 6.12.8 natural loopback the natural loop back function can be enabled by setting register bit mr16.10. w ith natural loop back enabled, whenever the 78q8430 phy is transmitting and not receiving on the twist ed pair media (10base - t half duplex mode), data on the txd pins is looped back onto the rxd pins. during a collision, data from the rxi pins is routed to the rxd pins. downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 51 6.12.9 auto - negotiation the 78q8430 phy supports the auto - negotiation functions of clause 28 of ieee - 802.3. this function can be controlled via register settings. the auto - negotiation function defaults to on and bit mr0[ 12 ] , anegen, is high after reset. software c an disable the auto - negotiation function by writing to bit mr0[ 12 ]. the contents of register mr4 are sent to the phys link partner during aut o - negotiation, coded in fast link pulses. bits mr4.8:5 reflect the state of the tech[2 :0] bits after reset. if tech[2:0] = 111 b , then all 4 bits are high. if tech[2:0] = 001 b , then only bit 5 is high. after reset, software can change any of these bits from a 1 to a 0. with auto - negotiation enabled, the 78q8430 phy will start sending fast link pulses at power on, loss of link or a command to restart. at the same time, it will look for either 10base - t idle, 100base - tx idle or fast link pulses from its link partner. if either idle pattern is detected, the 78q8430 phy configures itself in half - duplex mode at the appropriate speed. if it detects fast link pulses, it decodes and analyzes the link code transmitted by the link partner. when three identical link code w ords are received (ignoring the acknowl edge bit), the link code word is stored in register 5. upon receiving three more i dentical link code words, with the acknowledge bit set, the 78q8430 phy configures itself t o the highest priority technology common to the two link partners. the technology priorities are, in descen ding order: ? 100base - tx, full duple x. ? 100base - tx, half duplex. ? 10base - t, full duplex. ? 10base - t, half duplex. once auto - negotiation is complete, register bits mr18[ 11:10 ] will reflect the actual speed and duplex that was chosen. if auto - negotiation fails to establish a link for any reason, register bit mr18[ 12 ] will reflect this and auto negotiation will restart from the beginning. writing a one to bi t mr0[ 9] , raneg, will also cause auto negotiation to restart. 6.12.10 led indicators two led pins can be used to indicate various states of operation of the 78q84 30 phy. the default configuration uses led0 to indicate the link is up and led1 to indicate either rx or tx activity. led0 and led1 may be redefined via mr23. there is no direct hardware for controlli ng the mac from the phy led status, th erefore software drivers must obtain the duplex and speed parame ters from the phy register mr18[ 11:10 ] and configure the mac accordingly. 6.12.11 phy interrupts the 78q8430 phy has an interrupt signal that is asserted whenever any of the ei ght interrupt bits of m r17[ 7:0 ] are set. the phy bit in the host interrupt register (hir) is set to indicate and interrupt from the phy. individual phy interrupt conditions can be enabled via mr17, bits 15:8, the phy interrupt enable bits. phy interrupt bits are cleared when mr17 is read. 6.12.12 internal clock pll when the internal clock mode is selected by the clkmode pin, the 100 mhz s ystem clock is provided by a pll inside the phy. this pll multiplies the frequency of the 25 mhz pll crystal oscillator up to the 100 mhz needed to run the system clock. when the phy is powered down, the pll used to generate the internal system clock is also powered down and ceases to function. for this reason, the internal phy should never be pow ered down when the internal sys tem clock is selected by the clkmode pin. there is no external visibility for the system clock when the internal c lock mode is selected. the gbi interface must therefore always be used in asynchronous bus mode when the int ernal clock mode is used. downloaded from: http:///
78q8430 data sheet ds_8430_001 52 rev. 1.2 7 regi ster descriptions 7.1 register overview the 78q8430 has 10 address bits for a total address space of 1024 bytes. this address space is divided into four 256 - location blocks: que, ctl, reserved and snoop. the que section contains registers used to control transmit and receive qu eues. each queue is allocated eight 32 - bit registers for a maximum of eight queues supported. the ctl section contains control registers used to control the behavior of 78q8 430. a block of 256 addresses is reserved for future use. t he snoop section is mapped to cache memory via the snoop control r egister. address range group 0x000 que 0x0ff 0x100 ctl 0x1ff 0x200 reserved 0x2ff 0x300 snoop 0x3ff downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 53 7.2 que register overvi ew address range que # symbol name 0x000 - 0x01c que 0 0x00 pcwr packet control word register 0x04 pszr packet size register 0x08 stdr setup transmit data register 0x0c tdr transmit data register 0x10 rdr receive data register 0x14 reserved 0x18 qflr que first/last pointers. 0x1c qsr que status register 0x020 - 0x03f que 1 que 1 register s 0x040 - 0x05f que 2 que 2 registers 0x060 - 0x07f que 3 que 3 registers 0x080 - 0x09f que 4 que 4 registers 0x0a0 - 0x0bf que 5 que 5 registers 0x0c0 - 0x0df que 6 que 6 registers 0x0e0 - 0x0ff que 7 que 7 registers downloaded from: http:///
78q8430 data sheet ds_8430_001 54 rev. 1.2 7.3 ctl register overview address symbol page name 0x100 dma 59 dma slave mode control and status 0x104 rpsr 59 receive packet status fifo 0x108 tpsr 59 transmit packet status fifo 0x10c tpros 60 transmit producer status 0x110 rpros 60 receive producer status 0x114 reserved 0x118 gbi_i d 61 part id register 0x11c gbi_cs 61 configuration register 0x120 reserved 0x124 reserved 0x128 rttr 61 receive to transmit transfer register 0x12c fdr 61 frame disposition register 0x130 rfbsr 61 receive first block status register 0x134 rdsr 62 receive data statu s register 0x138 bcr 62 bist control register 0x13c bbdr 63 bist bypass mode data re gister 0x140 mddar 63 station management data register 0x144 mdcar 63 st ation management control and address register 0x148 prdr 63 prom data 0x14c prcr 64 prom control 0x150 reserved 0x154 mcr 64 mac control register 0x158 reserved 0x15c reserved 0x160 reserved 0x164 cdr 65 count data register 0x168 ccr 65 count control register 0x16c cmr 66 count management register 0x170 sncr 66 snoop control register 0x174 - 0x17c reserved 0x180 idcr 66 interrupt delay count register 0x184 pdcr 66 pause delay count register 0x188 hnrcr 67 host not responding count register 0x18c wusr 67 wake up status register 0x190 wmvr 67 water mark values register 0x194 reserved 0x198 pmcap 67 power management capabilities 0x19c pmcsr 68 power management control and status 0x1a0 car 68 address of cam rule being accessed 0x1a4 rmr 69 rule match register 0x1a8 rcr 69 rule control register 0x1 ac reserved downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 55 address symbol page name 0x1b0 reserved 0x1b4 reserved 0x1b8 reserved 0x1bc reserved 0x1c0 qsir 70 que status interrupt register 0x1c4 qsmr 70 que status mask register 0x1c8 ouir 71 overflow/underrun interrupt register 0x1cc oumr 71 overflow/underrun mask register 0x1d0 trir 71 transmit rmon interrupt register 0x1d4 trmr 72 transmit rmon mask register 0x1d8 rrir 72 receive rmon interrupt register 0x1dc rrmr 72 receive rmon mask register 0x1e0 reserved 0x1e4 reserved 0x1e8 hir 72 ho st interrupt register 0x1ec himr 73 host interrupt mask register 0x1f0 reserved 0x1f4 reserved 0x1f8 reserved 0x1fc reserved 7.4 snoop address space overview 0x300 - 0x3ff snoop accessing data in this address space will be mapped to the contents of the buffer memory block indicated by the sncr . downloaded from: http:///
78q8430 data sheet ds_8430_001 56 rev. 1.2 7.5 que registers 7.5.1 packet control word register name: pcwr reset val: 0x0000_0000 block: que addre ss: 0x000 bits type default description 31:30 x reserved 29:25 wo n/a preload the number of bytes to pre - load into the mac tx fifo before the frame begins transmission to the phy. this may need to be non - zero for large ip headers that want to have the checksum inserted to ensure the checksum is not transmitted before the end of the header is loaded. 24:16 wo n/a packet id the 9 - bit id value used to identify this packet in the tx status fifo. 15:10 wo n/a ip header offset offset in bytes to the ip header in this frame. if this value is non - zero then the ip header checksum will be corrected. 9 wo n/a append crc when set, the transmitter shall append the correct crc checksum to the end of the frame. 8 wo n/a fix crc when set, the transmitter shall correct the existing crc checksum on the end of the packet. 7 x reserved 6 wo n/a disable padding for small packets (<64 bytes). 5 wo n/a late notify interrupt on completion. 4 wo n/a early notify interrupt at beginning of transmission. 3 wo n/a interru pt on excessive collisions. 2 wo n/a disable deferral timeout. 1 wo n/a enable fast back - off timer. 0 x reserved 7.5.2 packet size register name: pszr reset val: 0x0000_0000 block: que address: 0x004 bits type default description 31:16 x reserved 15:0 rw 0000 packet size the size, in bytes, of the packet that will be added to the que. downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 57 7.5.3 setup transmit data register name: stdr reset val: 0x0000_0000 block: que address: 0x008 bits type default description 31:25 x reserved 24 rw endian the network transmit byte order. set = big endian (most significant byte transmit first) clear = little endian (least significant byte transmit first) 23:20 x reserved 19:18 rw 00 start offset the number of bytes to ignore on the first data word written for this buffe r. this byte mask is applied any time the count value is non - zero. after each time it is applied, however, it is reset to zero such that it is really only applied on the first write. 17:16 rw 00 end offset the number of bytes to ignore on the last data word written for this buffer. this byte mask is applied any time the count value is zero. unlike the start offset, the end offset is not self clearing. this m eans that the end offset will be applied to all writes to the que once the count value reaches zero, unless the host clears the end offset. the remainder of pszr will override the end offset when a write occurs and the pszr value is less than four. 15:14 x reserved 13:0 rw 0000 count the total number of writes needed to complete the buffer minu s one. this counter decrements on each write operation to the que. this counter decrements on each write operation to the que until it reaches zero. the count value will remain zero until the next host write. the value written here must be one less than the number of writes in the buffer so that the count value will equal zero on the last write and cause the end offset to be applied. note: the pcwr and pszr must be set before writing to the stdr. 7.5.4 transmit data register name: tdr reset val: 0x0000_0000 block: que address: 0x00c bits type default description 31:0 wo n/a packet data to add to the que data written to this register is added to the que to which the register belongs. 7.5.5 receive data register name: rdr reset val: 0x0000_0000 block: que address: 0x010 bits type default description 1:0 ro n/a packet data read from the que data read from this register is shifted out of the que to which the register belongs. the rpsr should be consulted to make sure data is available before reading this register. downloaded from: http:///
78q8430 data sheet ds_8430_001 58 rev. 1.2 7.5.6 que first/last register name: qflr reset val: 0x0000_0000 block: que address: 0x018 bits type default description 31:23 x reserved 22:16 rw 0x00 last the value of the last pointer f or this que. 15:7 x reserved 6:0 rw 0x00 first the value of the first pointer for this que. note: the default values will vary for static ques 2 and 5. 7.5.7 que status register name: qsr reset val: 0x0000_0000 block: que address: 0x01c bits type default description 31 rw 0 qdr que data is ready. 30 rw 0 pause mask when set, pause mode has no effect on the qdr bit for this que. the default behavior when clear is to disallow the setting of the qdr bit in pause mode. 29:26 x reserved 25:24 rw 00 mode the current qsr value for the qdr mode. 00 = qdr set when first is not 0 01 = qdr set when above is set. 10 = qdr set when leop is not zero. 11 = qdr set when above is set or leop is not 0. 23:1 9 x reserved 18 ro 0 eop the que contains at least one eop. 17 ro 0 above the count value is above the threshold. 16 ro 0 below the count value is below the threshold. 15 x reserved 14:8 rw 0x00 threshold the number to compare to count to determine the above and below bits. 7 x reserved 6:0 ro 0x00 count the total number of blocks assigned to this que. note: only bits 31 and 30 are valid for static ques 2 and 5. downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 59 7.6 ctl registers 7.6.1 dma control and status register name: dma reset val: 0x0000_0000 block: ctl address: 0x100 bits type default description 31:18 x 0 reserved 17 rw 0 read mode once this bit is set the host interface will be in dma read mode until t he bit is cleared by a write to this register. 16 rw 0 write mode once this bit is set the host interface will be in dma write mode until the bit is cleared by a read to this register. 15:10 x 0 reserved 9:0 rw 0 address the location of the register to direct dma access to. 7.6.2 receive packet status register name: rpsr reset val: 0x0000_0000 blo ck: ctl address: 0x104 bits type default description 31 ro 0 done when not set the packet is still in the process of ingressing the que. 30 ro 0 length error the packet length was not correct. 29 ro 0 truncated the packet was truncated and is incomplet e. 28 ro 0 collision the packet suffered a collision and is incomplete. 27 ro 0 mii error 26 ro 0 dangling byte the received packet length was not an integer number of bytes. 25 ro 0 crc ethernet crc checksum error. 24 ro 0 checksum ip header checksum error. 23:16 ro 0 classification the packet classification results. 15:0 ro 0 count the total number of bytes currently in the que for this packet. when the done bit is set, this represents the actual packet size. 7.6.3 transmit packet status register name : tpsr reset val: 0x0e00_0000 block: ctl address: 0x108 bits type default description 31 ro 0 done when not set , the frame is still in transmission. when set, the content is egressing the que. 30 ro 0 halted the packet was halted. 29 ro 0 truncated t he packet was truncated and is incomplete. downloaded from: http:///
78q8430 data sheet ds_8430_001 60 rev. 1.2 name : tpsr reset val: 0x0e00_0000 block: ctl address: 0x108 bits type default description 28 ro 0 carrier loss of carrier during transmission. 27:25 ro 7 que the number of the que that was the source for this packet. 24:16 ro 0 packet id the packet id that was assigned to this packet by the pcwr when it was loaded into the que. 15:13 x reserved 12 ro 0 no heart beat no heartbeat was detected at the end of transmission. 11 ro 0 excessive deferrals 10 ro 0 deferred 9 ro 0 late collision 8 ro 0 excessive collisions 7:4 x r eserved 3:0 ro 0 collision count the number of collisions experienced by this packet. note: when the done bit is not set, the collision count field may not be correct. in this case, a non - zero value does indicate that the frame currently being transmitted has experienced at least one collision, but the actual count value may not be correct until the done bit is set. 7.6.4 transmit producer status name: tpros reset val: 0x0000_0000 block: ctl address: 0x10c bits type default description 31:8 x reserved 7 ro 0 que7: que is dropping a packet. 6 ro 0 que6: que is dropping a packet. 5 ro 0 que5: que is dropping a packet. 4 ro 0 que4: que is dropping a packet. 3 ro 0 que3: que is dropping a packet. 2 ro 0 que2: que is dropping a packet. 1 ro 0 que1: que is dropping a packet. 0 ro 0 que0: que is dropping a packet. 7.6.5 receive producer status name: rpros reset val: 0x0000_0000 block: ctl address: 0x110 bits type default description 31:8 x reserved 7 ro 0 que7: que is droppin g a packet. 6 ro 0 que6: que is dropping a packet. 5 ro 0 que5: que is dropping a packet. 4 ro 0 que4: que is dropping a packet. 3 ro 0 que3: que is dropping a packet. 2 ro 0 que2: que is dropping a packet. 1 ro 0 que1: que is dropping a packet . 0 ro 0 que0: que is dropping a packet. downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 61 7.6.6 revision id name: id reset val: 0x8430_0102 block: ctl address: 0x118 bits type default description 31:16 ro 8430 prod id indicates the product number. 15:8 ro 2 ver id indicates the product version number. 7:0 ro 1 rev id indicates the silicon revision number. 7.6.7 configuration name: gbi_cs reset val: 0x0000_0000 block: ctl address: 0x11c bits type default description 31:5 x reserved 4:0 ro 0 conf the current status of the configuration pins. 7.6.8 receive to transmit transfer register name: rttr reset val: 0x0000_0000 block: ctl address: 0x128 bits type default description 31:1 x reserved 0 rw 0 transfer writing a one to this bit signals the que logic to transfer the que0 first block to que3. the que logic clears the bit when the operation is complete. 7.6.9 frame disposition register name: fdr reset val: 0x0000_0000 block: ctl address: 0x12c bits type default description 31:1 reserved 0 w drop rx frame writing a 1 to this bit causes the rx consumer to drop the current fram e entirely from the que. 7.6.10 receive first block status register name: rfbsr reset val: 0x0002_0000 block: ctl address: 0x130 bits type default description 31:18 reserved 17 r 1 eof the first block is the end of its frame. 16 r 0 er r the first block is the end of a truncated frame. 15 reserved 14:8 r 00 next the block that is next in que0 after the current first block. 7:0 r 00 used the number of valid bytes in the first block for que0. downloaded from: http:///
78q8430 data sheet ds_8430_001 62 rev. 1.2 7.6.11 receive data status register name: rdsr r eset val: 0x0001_0000 block: ctl address: 0x134 bits type default description 31:25 reserved 24 r 0 eof when set this bit indicates that the next data word read from que0 will be the end of its frame. 23:17 reserved 16 r 1 que0 empty when set this bit indicates that que0 contains no data. 15:2 reserved 1:0 r 00b que0 data size the number of valid bytes in the next data word read from que0. 7.6.12 bist control register name: bcr reset val: 0x2010_0000 block: ctl address: 0x138 bits type default desc ription 31 w bist start writing a 1 to this bit triggers the selected bist test (see bist mode below). 30 r 0 fail the bist operation failed. 29 r 1 pass the bist operation passed. 28:21 reserved 20 r/w 1 auto increment wh en set, the ram address field will auto - increment after each ram access. 19 r/w bist enable enable bist mode operation. 18:16 r/w 000 bist mode set the bist test mode: 000b C reserved. 001b C pattern. 010b C fill 0. 011b C read 0. 100b C fill 1. 101b C read 1. 110b C bypass. 111b C reserved. 15:14 reserved 13:0 r/w 0x000 ram address set the address of the ram that is accessed via bbdr in bypass mode. downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 63 7.6.13 bist bypass mode data register name: bbdr reset val: n/a block: ctl address: 0x13c bits type default description 31:0 r/w ram data reads and writes to these bits go directly to the qmem ram at the location indicated by bcr only when the bist mode is set to bypass. 7.6.14 station management data register name: mdd ar reset val: 0x0000_0000 block: ctl address: 0x140 bits type default description 31:16 x 0000 reserved 15:0 rw 0 smi data data read from or data to be written to the phy. see section 7.7 . 7.6.15 station management control and address register name: mdcar reset val: 0x0000_0000 block: ctl address: 0x144 bits type default description 31:13 x 0000 reserved 12 rw 0 preamble writing a 1 suppresses the generation of the 32 - bit phy station management preamble before the phy register transfer. the internal phy of the 8430 does not require the preamble. 11 rw 0 busy writing a 1 initiates the phy register transfer. the hardware will clear the bit when the operation completes. 10 rw 0 regwr writing a 1 indicated the mddar data is to be written to the phy. writing a 0 causes the phy register to be read and the data placed in the mddar . 9:5 rw 0 phy addr address of the phy to access. 4:0 rw 0 phy reg address of the phy re gister to access. 7.6.16 prom data register name: prdr reset val: 0x0000_0000 block: ctl address: 0x148 bits type default description 31:16 x 0000 reserved 15:0 rw 0000 prom data data to write to or read from the eeprom device. downloaded from: http:///
78q8430 data sheet ds_8430_001 64 rev. 1.2 7.6.17 prom control register name: prcr reset val: 0x0000_0000 block: ctl address: 0x14c bits type default description 31:9 x 0000 reserved 8 rw 0 busy writing a 1 initiates the eeprom data transfer. the hardware will clea r the bit when the operation completes. 7:6 rw 0x0 operation 1 1 = erase. 1 0 = read. 0 1 = write. 0 0 = enable or disable writing, as specified in prom addr: [5:4] = 11, enable [5:4] = 00, disable 5:0 rw 0x00 prom addr address of the eeprom to access. 7.6.18 mac control register name: mcr reset val: 0x0080_0050 block: ctl address: 0x154 bits type default description 31:28 x 0000 reserved 27 rw 0 tx enable when this bit is clear transmitting stops immediately. 26 rw 0 tx halt when this bit is set transmitting stops at the end of the current frame. 25 rw 0 rx enable w hen this bit is clear receiving stops immediately. 24 rw 0 rx halt when this bit is set receiving stops at the end of the current frame. 23 rw 1 rx drop error when this bit is set then an error in the first 256 bytes will cause a packet to be dropped. if clear, error packets are forwarded to the host. 22 rw 0 keep dropped status normally, the status for a dropped frame is not added to the receive status fifo. when this bit is set then a status for all frames, i ncluding dropped frames, is added to the receive status fifo. the status for a dropped frame will have a size of zero in the rpsr . 21 rw 0 jumbo ok normally frames in excess of the maximum allowed by 802.3 are flagged as bad. if this bit is set then larger frame sizes are allowed. 20:18 0000 reserved 17 rw 0 macrst software re - initialization. setting this bit will also automatically set both rx and tx halt bits and clear both rx and tx enable bits. this bit is only cleared by writing a zero. 16 rw 0 macloop loopback mode for the mac. 15:8 x 0x000 reserved 7 rw 0 no rx pad strip the padding bytes from the end of received frames that are 64 bytes in length. when the padding is stripped from a frame the crc is stripped as well. downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 65 6 rw 1 fulldup 1 = full duplex 0 = half duplex the default setting for the mac is full duplex mode. this bit needs to be updated each time there is a link status change in the phy . 5 rw 0 sqe enable sqe checking. 4 rw 1 no ex diff disable checking for excessive deferrals. 3 x 0 reserved 2 x 0 reserved 1 rw 0 no rx crc when this bit is set, the mac receiver will strip the crc bytes from the end of received frames after the crc check is complete . 0 rw 0 no crc chk when this bit is set, crc checking is disabled. this bit should never be set when the no rx crc bit is set as there will be no way to verify the crc. 7.6.19 count data register name: cdr reset val: 0x0000_0000 block: ctl address: 0x164 bits type default description 31:0 rw count value of the counter indicated by c cr . 7.6.20 counter control register name: ccr reset val: 0x0000_0000 block: ctl address: 0x168 bits type default description 31:11 x reserved 10 rw auto increment when this bit is set, the address of the counter being accessed is automatically incremented after each access to the cdr . 9 rw clear on read when this bit is set, the counter being read is automatically cleared to zero after each access to the cdr . 8 rw access mode when this bit is clear, the cdr is in read mode. when set, the cdr is in write mode. 7:6 x reserved 5:0 rw address address of the counter to access. (00 to 0e, transmit counters; 0f to 25, receive counters) downloaded from: http:///
78q8430 data sheet ds_8430_001 66 rev. 1.2 7.6.21 counter management register name: cmr reset val: 0x0000_0000 block: ctl address: 0x16c bits type default description 31:3 x reserved 2 rw freeze when this bit is set, the values of the counters are frozen until the bit i s cleared. countable events that occur while this bit is set are stored in a fifo and processed after the bit is cleared such that no counts are lost. if the fifo fills before the freeze bit is cleared then the bit is auto matically cleared and the counters updated. 1 w clear receive when a 1 is written to this bit then all receive counters are automatically cleared. 0 w clear transmit when a 1 is written to this bit than all transmit counters are automatically cleared. 7.6.22 snoop control register name: sncr reset val: 0x0000_0000 block: ctl address: 0x170 bits type default description 31:7 x reserved 6:0 rw 0x00 block pointer to the block that is accessed directly via the snoop register space. 7.6.23 interrupt delay count register name: idcr reset val: 0x0000_0000 block: ctl address: 0x180 bits type default description 31:24 x reserved 23 :0 rw idc how long to delay the data received interrupt, measured in byte times. 7.6.24 pause delay count register name: pdcr reset val: 0x0000_0000 block: ctl address: 0x184 bits type default description 31:17 x reserved 16 wo start start local pause. writing a one to this bit triggers a local pause condition immediately. 15:0 rw pause how long to halt transmit ques for a local pause condition, measured in delay quanta of 512 rx bit times. downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 67 7.6.25 host not responding count register name: hnrcr reset val: 0x0000_0000 block: ctl address: 0x188 bits type default description 31:0 rw count number of system cycles to wait for the host to respond to a wake condition before sending an hnr response. 7.6.26 wake up status register name: wusr reset val: 0x0000_0000 blo ck: ctl address: 0x18c bits type default description 31: 8 x reserved 7 :0 ro class the classification result that triggered the wake up event. 7.6.27 water mark values register name: wmvr reset val: 0x0000_0400 block: ctl address: 0x190 bits type default description 31 x reserved 30:24 ro 0x7d free a count of the number of free memory blocks in the memory manager. 23 x reserved 22:16 rw 0x00 interrupt minimum number of free blocks before the host is interrupted. 15 x reserved 14:8 rw 0x04 headroom minimum number of free blocks before the mac receiver is halted. 7 x reserved 6:0 rw 0x00 pause minimum number of free blocks before the pause packet is sent. note: for all watermarks, a value of zero will disable the related feature. 7.6.28 power management capabilities name: pmcap reset val: 0x120a_4801 block: ctl address: 0x198 bits type default description 31:27 ro 0x02 support power management events supported. this field always reads back 00010b to indicate pme from d1 is supported. 26 ro 0 d2 suppo rt reads back 0 to indicate d2 is not supported. 25 ro 1 d1 support reads back 1 to indicate d1 is supported. 24:20 ro 0x00 init reads back 00000b to indicate no device specific initialization. 19 ro 1 clk reads back 1 to indicate the clock (busclk) is needed for pme operation. 18:16 ro 010 ver reads back 010b to indicate specification version 1.1 compliance. downloaded from: http:///
78q8430 data sheet ds_8430_001 68 rev. 1.2 name: pmcap reset val: 0x120a_4801 block: ctl address: 0x198 bits type default description 15:8 ro 0x48 next reads back 0x48. points to next capability. 7:0 ro 0x01 id reads back 0x01. 7.6.29 power management control and status register na me: pmcsr reset val: 0x0000_0000 block: ctl address: 0x19c bits type default description 31:24 x reserved 23:22 rw 00 psmarg1 voltage regulator #1 margin. 21:20 rw 00 psmarg2 voltage regulator #2 margin. 19:18 rw 00 psmarg3 voltage regulator #3 margi n. 17:16 x reserved 15 rw 0 pme power management event status. this bit is set by a wake signal from the cam and only cleared when the host writes a 1 to this bit. 14:9 x reserved 8 rw 0 pme_enb enables assertion of pme when there is a power management event. 7:2 x reserved 1:0 rw 00 ps present power management state, 01b = d1, 00b = d0. (any non - zero value here tells the part that the host is in power down mode). in any state other than d0, wake signals from classification are allowed to genera te pme interrupts and the movement of receive data into ques is inhibited. 7.6.30 cam address register name: car reset val: 0x0000_0000 block: ctl address: 0x1a0 bits type default description 31:7 x reserved 6:0 rw 0x00 addr cam address of rule being accessed by the rmr and rcr . downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 69 7.6.31 rule match register name: rmr reset val: 0xfe3e_ff00 block: ctl address: 0x1a4 bits type default description 31:25 rw 0x7f previous hit mask mask bits to match for the previous hit match. a zero means the corresponding bit in the previous hit match does not have to match to be a hit. 24 x reserved 23:17 rw 0x1f previous hit match this cam entry matches against the address of the previous cam hit. 16 x reserved 15:8 rw 0xff data mask mask bits to match for the data match. a zero means the corresponding bit in the data match does not have to match to be a hit. 7:0 rw 0x00 data match this cam field matches against either the packet byte or the control logic x register value selected by the match control field of the control word register. note: 1. if all previous hit mask bits are zero, then the rule is disabled and will never match. 2. the rmr value is not valid for car addr values of zero or one. 7.6.32 rule control register name: rcr reset v al: 0x0000_0002 block: ctl address: 0x1a8 bits type default description 31:22 x reserved 21:16 rw 0x00 byte offset when this rule matches, do not attempt another match for this number of bytes. a zero means that the very next byte will be executed. a value of one means that the very next packet byte is ignored but the byte after that is executed, etc. when this field is used to initialize the counter, no offset is applied (see the toc control logic action). 15:8 x reserved 7 rw 0 interrupt when a match is made for this rule then trigger an interrupt to the host. 6:2 rw 0x0 control logic action specifies what action to take when a match is made. the control logic actions are described in detail in table 26 . 0x0 = nop 0x14 = thxa 0x2 = pause 0x15 = setmc 0x4 = wake 0x16 = vlan 0x6 = ipck 0x17 = setbc 0x7 = tipo 0x18 = toc 0x8 = tdx 0x1a = dec 0xa = tax 0x1b = mctl 0xc = taxh 0x1c = tdph 0xd = taxl 0x1d = tdlth 0x10 = txa 0x1e = tdpl 0x12 = tlxa 0x1f = tdltl downloaded from: http:///
78q8430 data sheet ds_8430_001 70 rev. 1.2 name: rcr reset v al: 0x0000_0002 block: ctl address: 0x1a8 bits type default description 1:0 rw 10 match control how to generate a cam reference word for the next pass. match control is described in detail in table 27 . 00 = done 10 = md 01 = mx 11 = drop 7.6.33 que status interrupt r egister name: qsir reset val: 0x0000_0000 block: ctl address: 0x1c0 bits type default description 31 ro qdr rise rising edge detected on que 7 qdr bit. 30 ro qdr fall falling edge detected on que 7 qdr bit. 29 ro a rise rising edge detected on que 7 qsr a bit. (see qsr ) 28 ro b rise rising edge detected on que 7 qsr b bit. (see qsr ) 27:24 ro que 6 qdr rise, qdr fall, a rise and b rise interrupt bits for que 6. 23:20 ro que 5 qdr rise, qdr fall, a rise and b rise interrupt bits for que 5. 19:16 ro que 4 qdr rise, qdr fall, a rise and b rise interrupt bits for que 4. 15:12 ro que 3 qdr rise, qdr fall, a rise and b rise interrupt bits for que 3. 11:8 ro que 2 qdr rise, qdr fall, a rise and b rise interrupt bits for que 2. 7:4 ro que 1 qdr rise, qdr fall, a rise and b rise interrupt bits for que 1. 3:0 ro que 0 qdr rise, qdr fall, a rise and b rise interrupt bits for que 0. note: all bits are cleared on read. 7.6.34 que status mask register name: qsmr reset val: 0x0000_0000 block: ctl address: 0x1c4 bits type default description 31:0 rw que status interrupt mask when a bit is set it enables the que status interrupt for the corresponding bit in the qsir . when a bit is clear, the corresponding bit in the qsir will still be set on its event and cleared on read but will not be passed on to the hir . downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 71 7.6.35 overflow/underrun interrupt register name: ouir reset val: 0x0000_0000 block: ctl address: 0x1c8 bits type default description 31 ro 0 que data overflow overflow condition detected on que 7. 30 ro 0 que data underrun under - run condition detected on que 7. 29:28 ro 00 reserved 27:26 ro 0x0 que 6 que data overflow and que data underrun bits for que 6. 25:24 ro 00 reserved 23:22 ro 0x0 que 5 que data overflow and que data underrun bits for que 5. 21:20 ro 00 reserved 19:18 ro 0x0 que 4 que data overflow and que data underrun bits for que 4. 17:16 ro 00 reserved 15:14 ro 0x0 que 3 que data overflow and que data underrun bits for que 3. 13:12 ro 00 reserved 11:10 ro 0x0 que 2 que data overflow and que data underrun bits for que 2. 9:8 ro 00 reserved 7:6 ro 0x0 que 1 que data overflow and que data underrun bits for que 1. 5:4 ro 00 reserved 3:2 ro 0x0 que 0 que data overflow and que data underrun bits for que 0. 1:0 ro 00 reserved note: all bits are cleared on read. 7.6.36 overflow/underrun mask register name: oumr reset val: 0x0000_0000 block: ctl address: 0x1cc bits type default description 31:0 rw 0x0000 0000 overflow/underrun interrupt mask when a bit is set, it enables the overflow/underrun interrupt for the corresponding bit in the ouir . when a bit is clear, the corres ponding bit in the ouir will still be set on its event and cleared on read but will not be passed on to the hir . 7.6.37 transmit rmon interrupt register name: trir reset val: 0x0000_0000 block: ctl address: 0x1d0 bits type default description 31:0 ro 0x0000 0000 rmon tx counter rollover set when the rmon tx counter with the same index number as the bit number has rolled over. note: all bits are cleared on read. downloaded from: http:///
78q8430 data sheet ds_8430_001 72 rev. 1.2 7.6.38 transmit rmon mask register name: trmr reset val: 0x0000_0000 block: ctl address: 0x1d4 bits type default description 31:0 rw 0x0000 0000 tx rmon interrupt mask when a bit is set, it enables the tx rmon interrupt for the corresponding bit in the trir . when a bit is clear, the correspo nding bit in the trir will still be set on its event and cleared on read but will not be passed on to the hir . 7.6.39 receive rmon interrupt register name: rrir reset val: 0x0000_0000 block: ctl address: 0x1d8 bits ty pe default description 31:0 ro 0x0000 0000 rmon rx counter rollover set when the rmon rx counter with an index equal to the bit number plus 32 has rolled over. note: all bits are cleared on read. 7.6.40 receive rmon mask register name: rrmr reset val: 0x0000_0000 block: ctl address: 0x1dc bits type default description 31:0 rw 0x0000 0000 rx rmon interrupt mask when a bit is set, it enables the rx rmon interrupt for the corresponding bit in the rrir . when a bit is clear, the correspondi ng bit in the rrir will still be set on its event and cleared on read but will not be passed on to the hir . 7.6.41 host interrupt register name: hir reset val: 0x0000_0000 block: ctl address: 0x1e8 bits type default description 31:21 x 0x000 reserved 20 ro 0 wake pme is asserted low (a power event has occurred). 19 ro 0 que status qsir interrupt. 18 ro 0 que overflow/underrun ouir interrupt. 17 ro 0 phy 16 ro 0 rmon 15 :13 x 0 reserved 12 ro 0 tx bad a transmitted frame had an error. 11 ro 0 rx bad a frame was received with an error. 10:9 x reserved 8 ro 0 late rx notify this interrupt is asserted each time an entire frame is added to the receive que. 7 ro 0 early rx notify data reception has started (delayed by the idcr ). downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 73 name: hir reset val: 0x0000_0000 block: ctl address: 0x1e8 bits type default description 6 ro 0 reserved. 5 ro 0 late tx notify interrupt on completion. (see pcwr ) 4 ro 0 early tx notify interrupt at the start of transmission. (see pcwr ) 3 ro 0 water mark interrupt when the free block count hits the low water mark. 2 ro 0 que overflow interrupt when a que requests memory and there is none. 1 ro 0 pause interrupt when the local pause changes state (on/off). 0 ro 0 class packet classification interrupt. note: bits 15:0 are cleared on read. bits 31:16 are only cleared when the sourc e is cleared. 7.6.42 host interrupt mask register name: himr reset val: 0x0000_0000 block: ctl address: 0x1ec bits type default descriptio n 31:0 rw host interrupt mask when a bit is set here it enables the host interrupt for the corresponding bit in the hir . when a bit is clear here, the corresponding bit in the hir will still be set on its event and cleared on read but will not trigger an interrupt on int . downloaded from: http:///
78q8430 data sheet ds_8430_001 74 rev. 1.2 7.7 phy management registers 7.7.1 phy register overview the 78q8430 phy implements sixteen - bit registers which are accessible via the mac station management access registers. the supported registers are shown below. unsupported registers will be read as all zeroes. the 78q8430 phy responds to phyad value 00001 b. the types of phy register access are summarized in table 34 . table 34 : phy register gr oup address symbol name default (hex) 0 mr0 control 3100 1 mr1 status (7849) 2 mr2 phy identifier 1 000e 3 mr3 phy identifier 2 7237 4 mr4 auto - negotiation advertisement (01e1) 5 mr5 auto - negotiation link partner ability 0001 6 mr6 auto - negotiation expansion 0000 7- 15 reserved 0000 16 mr16 vendor specific (0140) 17 mr17 interrupt control/status 0000 18 mr18 diagnostic register 0000 19 mr19 transceiver control 4xxx 20 - 22 reserved xxxx 23 mr23 led configuration 0010 24 mr24 mdi/mdix control (00c0) note s: 1. these registers can only be accessed indirectly via the mddar and mdcar registers. they cannot be accessed directly through the gbi address space. 2. the default values annotated with () are dependent on configuration states. downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 75 7.7.2 phy control register C mr0 bits symbol type default description 15 reset r/wc 0 reset setting this bit to 1 resets the device and sets all registers to the default states. th is bit is self - clearing. 14 loopbk r/w 0 loopback when this bit is set to 1, input data at txd[3:0] is output at rxd[3:0]. no transmission of data on the network medium occurs and receive data on the network medium is ignored. by default, the loopback signal path encompasses most of the digital functional blocks. this bit allows for diagnostic testing. 13 speedsl r/w 1 speed selection this bit determines the speed of operation of the 78q8430 phy. setting this bit to 1 indicates 100base - tx operation an d a 0 indicates 10base - t mode. this bit will default to 1 upon reset. when auto - negotiation is enabled, this bit will not be writable and will have no effect on the 78q8430 phy. if auto - negotiation is not enabled, this bit may be written to force manua l configuration. 12 anegen r/w 1 auto - negotiation enable the auto - negotiation process is enabled by setting this bit to 1. this bit will default to 1. if this bit is cleared to 0, manual s peed and duplex mode selection is accomplished through bit 13 ( speedsl ) and bit 8 ( duplex ) of the mr0 control register. 11 pwrdn r/w 0 power - down the device may be placed in a low power consumption state by setting this bit to 1. while in the power - down state, the device will still respond to management transactions. 10 rsvd r 0 reserved 9 raneg r/wc 0 restart auto - negotiation normally, the auto - negotiation process is started at power up. the process can be restarted by setting this bit to 1. this bit is self - clearing. 8 duplex r/w 1 duplex mode this bit determines whether the device supports full - duplex or half duplex. a 1 indicates full duplex operation and a 0 indicates half duplex. this bit will default to 1 upon reset. when auto - negotiation is enabled, this bit will not be writable and will have no effect on the 78q8430 phy. if auto - negotiation is not enabled, this bit may be written to force manual configuration. 7 colt r/w 0 collision test when this bit is set to 1, the device will assert the col signal in response to the assertion of the tx_en signal. collision test is disabled if the pcsbp bit, mr16[ 1] , is high. the collision test can be activated regardless of the duplex mode of operation. 6:0 rsvd r 0 reserved downloaded from: http:///
78q8430 data sheet ds_8430_001 76 rev. 1.2 7.7.3 phy status register C mr1 mr1 bits 15 through 11 reflect the ability of the 78q8430 phy. they do not refl ect any ability changes made via the mii management interface to mr0 bits 13 ( speedsl ), 12 ( anegen ) and 8 ( duplex ). bits symbol type default description 15 100t4 r 0 100base - t4 ability reads 0 to indicate the 78q8430 phy does not sup port 100base - t4 mode. 14 100x_f r 1 100base - tx full duplex ability 0 = not able 1 = able (default) 13 100x_h r 1 100base - tx half duplex ability 0 = not able 1 = able (default) 12 10t_f r 1 10base - t full duplex ability 0 = not able 1 = able (defaul t) 11 10t_h r 1 10base - t half duplex ability 0 = not able 1 = able (default) 10 100t2_f r 0 100base - t2 full duplex ability reads 0 to indicate the 78q8430 phy does not support 100base - t2 full duplex mode. 9 100t2_h r 0 100base - t2 half duplex ability r eads 0 to indicate the 78q8430 phy does not support 100base - t2 half duplex mode. 8 exts r 0 extended status information availability reads 0 to indicate the 78q8430 phy does not support extended status information in mr15. 7 rsvd r 0 reserved 6 mfps r 0 management frame preamble suppression support a 0 indicates that the 78q8430 phy can read management frames with a preamble. 5 anegc r 0 auto - negotiation complete logic one indicates that the auto - negotiation process has been completed and that the contents of registers mr4, 5, 6 are valid. 4 rfault rc/lh 0 remote fault a logic one indicates that a remote fault condition has been detected and when so, it remains set until it is cleared. this bit can only be cleared by reading this register (mr1) via the management interface. 3 anega r (1) auto - negotiation ability when set, this bit indicates the devices ability to perform auto - negotiation. the value of this bit is determined by the anegen bit (mr0.12) . 2 link rc/ll 0 link stat us a logic one indicates that a valid link has been established. if the link status should transition from an ok status to a not - ok status, this bit will become cleared and remains cleared until it is read. downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 77 bits symbol type default description 1 jab rc/lh 0 jabber detect in 10base - t mode, t his bit is set during a jabber event. after the event, the bit remains set until cleared by a read operation. 0 extd r 1 extended capability reads 1 to indicate the 78q8430 phy provides an extended register set (mr2 and beyond). 7.7.4 phy identifier register s C mr2, mr3 mr2: phy identifier register 1 bits symbol type value description 15:0 oui [23:6] r 000eh organizationally unique identifier this value is 00 - c0 - 39 for teridian semiconductor corporation. this register contains 16 of the upper 18 bits of the identifier. mr3: phy identifier register 2 bits symbol type value description 15:10 oui [5:0] r 1ch organizationally unique identifier the remaining 6 bits of the 24 - bit oui. 9:4 mn r 23h model number the 23 from the model number is encoded into the 6 bits. 3:0 rn r 03h revision number the value 0011 corresponds to the third revision of the silicon. 7.7.5 phy auto - negotiation advertisement registers C mr4 bits symbol type default description 15 np r 0 next page not supported. reads logic zero. 14 rs vd r 0 reserved 13 rf r/w 0 remote fault setting this bit to 1 allows the device to indicate to the link partner a remote fault condition. 12:5 taf r/w (0fh) technology ability field the default value of this field is dependent upon the mr1.15: 11 register bits. this field can be overwritten by management to auto - negotiate to an alternate common technology. writing to this register has no effect until auto - negotiation is re - initiated. 12 a7 r 0 reserved 11 asymp r/w 0 asymmetric pause operation for fu ll duplex links 0 = asymmetric pause operation not supported 1 = asymmetric pause operation is supported writing to this register has no effect until auto - negotiation is re - initiated. 10 pause r/w 0 pause operation for full duplex links 0 = pause operati on not supported 1 = pause operation is supported writing to this register has no effect until auto - negotiation is re - initiated. 9 a4 r 0 100base -t4 the 78q8430 phy does not support 100base - t4 operations. 8 a3 r/w 1 100base - tx full duplex this bit will be set to 1 upon reset and is writeable. writing to this register has no effect until auto - negotiation is re - initiated. downloaded from: http:///
78q8430 data sheet ds_8430_001 78 rev. 1.2 bits symbol type default description 7 a2 r/w 1 100base - tx half duplex this bit will be set to 1 upon reset and is writeable. writing to this register has no effect until auto - negotiation is re - initiated. 6 a1 r/w 1 10base - t full duplex this bit will be set to 1 upon reset and is writeable. writing to this register has no effect until auto - negotiation is re - initiated. 5 a0 r/w 1 10base -t this bit will be set to 1 upon reset and is writeable. writing to this register has no effect until auto - negotiation is re - initiated. 4:0 s4:0 r 01h protocol selector field the value is 00001 for ieee 802.3. 7.7.6 phy auto - negotiation line partner ability register C mr5 bits symbol type de fault description 15 np r 0 next page when 1 is read, it indicates the link partner wishes to engage in next page exchange. 14 ack r 0 acknowledge when 1 is read, it indicates the link partner has successfully received at least 3 consecutive and consistent flp bursts. 13 rf r 0 remote fault when 1 is read, it indicates the link partner has a fault. 12:5 a7:0 r 0 technology ability field this field contains the technology ability of the link partner. the bit definition is the same as mr4.12:5. 4:0 s4:0 r 00h selector field this field contains the type of message sent by the link partner. for ieee 802.3 compliant link partner, this field should be 00001. when mr5 contains a next page message, the bit definition is the same as mr7. 7.7.7 phy auto - negotiation expansion register C mr6 bits symbol type default description 15:5 rsvd r 0 reserved 4 pdf rc/lh 0 parallel detection fault when 1 is read, it indicates that more than one technology has been detected during link up. this bit is cleared when read. 3 l pnpa r 0 link partner next page able when 1 is read, it indicates the link partner supports the next page function. 2 npa r 0 next page able reads 0 since the 78q8430 phy does not support the next page function. 1 prx rc/lh 0 page received reads 1 when a new link code word has been received into the auto - negotiation link partner ability register. this bit is cleared upon read. 6.0 lpanega r 0 link partner auto - negotiation able when 1 is read, it indicates the link partner is able to participate in the a uto - negotiation function. downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 79 7.7.8 phy vendor specific register C mr16 bits symbol type default description 15 rsvd r 0 reserved 14 rsvd r 0 reserved 13 rsvd r 0 reserved 12 txhim r/w 0 transmitter high - impedance mode when set, the txop/txon transmit pins and the tx_clk pin are put into a high - impedance state. the receive circuitry remains fully functional. 11 sqei r/w 0 sqe test inhibit setting this bit to 1 disables 10base - t sqe testing. by default, this bit is 0 and generates a col pulse following the c ompletion of a packet transmission to perform the sqe test. 10 nl10 r/w 0 10base - t natural loopback setting this bit to 1 causes transmit data received on the txd0 - 3 pins to be automatically looped back to the rxd0 - 3 pins when 10base - t mode is enabled. 9 rsvd r 0 reserved 8 rsvd r 1 reserved 7 rsvd r 0 reserved 6 rsvd r 1 reserved 5 apol r/w 0 auto polarity during auto - negotiation and 10base - t mode, the 78q8430 phy is able to automatically invert the received signal due to a wrong polarity connection. it does so by detecting the polarity of the link pulses. setting this bit to 1 disables this feature. 4 rvspol r/w 0 reverse polarity the reverse polarity is detected either through 8 inverted 10base - t link pulses (nlp) or through one burst of inverted clock pulses in the auto - negotiation link pulses (flp). when the reverse polarity is detected and if the auto polarity feature is enabled, the 78q8430 phy will invert the receive data input and set this bit to 1. if auto polarity is disabled, then this bit is writeable. writing a 1 to this bit forces the polarity of the receive signal to be reversed. 3:2 rsvd r/w 0h reserved. must set to 00. 1 pcsbp r/w 0 pcs bypass mode when set, the 100base - tx pcs and scrambling/ descrambling functions are bypassed . scrambled 5 - bit code groups for transmission are applied to the tx_er, txd3 - 0 pins and received on the rx_er, rxd3 - 0 pins. the rx_dv and tx_en signals are not valid in this mode. pcsbp mode is valid only when 100base - tx mode is enabled and auto - negoti ation is disabled. 0 rxcc r/w 0 receive clock control this function is valid only in 100base - tx mode. when set to 1, the rx_clk signal will be held low when there is no data being received (to save power). the rx_clk signal will restart 1 clock cycle be fore the assertion of rx_dv and will be shut off 64 clock cycles after rx_dv goes low. rxcc is disabled when loopback mode is enabled (mr0.14 is high). this bit should be kept at logic zero when pcs bypass mode is used. downloaded from: http:///
78q8430 data sheet ds_8430_001 80 rev. 1.2 7.7.9 phy interrupt control / status r egister C mr17 the interrupt control/status register provides the means for controlling and observing the events that trigger an interrupt on the internal phy interrupt signal. this register can also be used in a polling mode via the mii serial interface as a means to observe key events within the phy via one register address. bits 0 through 7 are status bits, which are each set to logic one based upon an event . these bits are cleared after the register is read. bits 8 through 15 of this register, when set to logic one, enable their corresponding bit in the lower byte to signal an interrupt on the phy interrupt s ignal. bits symbol type default description 15 jabber_ie r/w 0 jabber interrupt enable 14 rxer_ie r/w 0 receive error interrupt enable 13 prx_ie r/w 0 page received interrupt enable 12 pdf_ie r/w 0 parallel detect fault interrupt enable 11 lp_ack_ie r/w 0 link partner acknowledge interrupt enable 10 ls_change_ie r/w 0 link status change interrupt enable 9 rfault_ie r/w 0 remote fault interrupt enable 8 aneg - comp_ie r/w 0 auto - negotiation complete interrupt enable 7 jab_int rc 0 jabber interrupt this bit is set high when a jabber event is detected by the 10base - t circuitry. 6 rxer_int rc 0 receive error interrupt this bit is set high when the rx_er signal transitions high. 5 prx_int rc 0 page received interrupt this bit is set high when a new page has been received from the link partner during auto - negotiation. 4 pdf_int rc 0 parallel detect fault interrupt this bit is set high by the aut o- negotiation logic when a parallel detect fault condition is indicated. 3 lp_ack_int rc 0 link partner acknowledge interrupt this bit is set high by the auto - negotiation logic when flp bursts are received with the acknowledge bit set. 2 ls_change_int rc 0 link status change interrupt this bit is set when the link status transitions from an ok status to a fail status, or vice versa. 1 rfault_int rc 0 remote fault interrupt this bit is set when a remote fault condition is detected. 0 aneg_comp_int rc 0 a uto - negotiation complete interrupt this bit is set by the auto - negotiation logic upon completion of auto - negotiation. 7.7.10 phy transceiver control register C mr19 bit symbol type default description 15:14 txo[1:0] r/w 01 transmit amplitude selection sets th e transmit output amplitude to account for transmit transformer insertion loss. 00 = gain set for 0.0db of insertion loss 01 = gain set for 0.4db of insertion loss 10 = gain set for 0.8db of insertion loss 11 = gain set for 1.2db of insertion loss 13:0 rs vd r/w xxx reserved downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 81 7.7.11 phy diagnostic register C mr18 this register contains both user accessible and non - user accessible bits (reserved) for internal testmodes. the user - access ible bits are located at bit 12:8 locations. bit symbol type default description 15:13 rsvd r 0 reserved 12 anegf rc 0 auto - negotiation fail indication this bit is set when auto - negotiation completes and no common technology was found. it remains set until read. 11 dplx r 0 duplex indication this bit indicates the result of the au to - negotiation for duplex arbitration as follows: 0 = half duplex was the highest common denominator 1 = full duplex was the highest common denominator 10 rate r 0 rate indication this bit indicates the result of the auto - negotiation for data rate arbitra tion as follows: 0 = 10base - t was the highest common denominator 1 = 100base - tx was the highest common denominator 9 rxsd r 0 receiver signal detect indication in 10base - t mode, this bit indicates that manchester data has been detected. in 100base - tx mod e, it indicates that the receive signal activity has been detected (but not necessarily locked on to). 8 rxlck r 0 receive pll lock indication indicates that the receive pll has locked onto the receive signal for the selected speed of operation (10base -t or 100base - tx). 7:0 rsvd r 0 reserved 7.7.12 phy led configuration register C mr23 bit symbol type default description 15:8 rsvd r/w 0 reserved 7:4 led1[3:0] r <1h> 0000 = link ok 0001 = rx or tx activity (default led1) 0010 = tx activity 0011 = rx activity 0100 = collision 0101 = 100 base - tx mode 0110 = 10 base - t mode 0111 = full duplex 1000 = link ok/blink=rx or tx activity 3:0 led0[3:0] r <0h> 0000 = link ok (default led0) 0001 = rx or tx activity 0010 = tx activity 0011 = rx activity 0100 = collision 0 101 = 100 base - tx mode 0110 = 10 base - t mode 0111 = full duplex 1000 = link ok/blink=rx or tx activity downloaded from: http:///
78q8430 data sheet ds_8430_001 82 rev. 1.2 7.7.13 phy mdi / mdix control register C mr24 bit symbol type default description 15:8 r 0 unused 7 pd_mode r/w 1 parallel detect mode write a 1 to this bit to add parallel detect mode. this will allow auto - switching to work when auto - negotiation is off while the other device has it on. 6 auto_sw r/w 1 auto switching write a 1 to this bit to enable auto switching. 5 mdix r/w 0 mdi state indicates state of the mdi pair or force configuration: 1 = mdix (cross over) 0 = mdi when auto_sw is a 1, this bit will only be readable. when auto_sw is a 0, this bit can be written to set the configuration. 4 mdix_cm r 0 auto - switch completion indicates completion o f auto - switch sequence. 1 = sequence completed 0 = sequence in progress or auto - switch is disabled. 3:0 mdix_sd r/w <0000> mdix seed write initial pattern seed for switching algorithm. initial seed will directly affect attempts [9,8,5,4] respectively to written bits [3:0]. setting to [0000] will result in device using its own seed of [0101]. downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 83 8 isolation transformers table 35 : isolation transformers name value condition turns ratio 1 ct : 1 ct 5% open - circuit inductance 350 h (min) @ 10 mv, 10 khz leakage inductance 0.40 h (max) @ 1 mhz (min) inter - winding capacitance 12 pf (max) d.c. resistance 0.9 ? (max) insertion loss 0.4 db (typ) 0 - 65 mhz hipot 1500 vr ms two simple 1:1 isolation transformers are all that are required at the line interface, but transformers with integrated common - mode choke are recommended for exceeding fcc requirements. table 35 gives the recommended line transformer characteristics. the 100base - tx amplitude specifications assume a transformer loss of 0.4 db. for the transmit line transformer with higher insertion losses, up to 1.2 db of insertion loss can be compensated by selecting the appropriate setting i n the transmit amplitude selection bits in register mr19[ 11:10 ]. 9 reference crystal if the internal crystal oscillator is to be used, a crystal with the c haracteristics given in table 36 should be chosen. table 36 : reference crystal name value units frequency 25.00000 mhz load capacitance* 4** pf frequency tolerance 50 per ieee 802.3 requirement ppm oscillation mode parallel resonance, fundamental mode parameters at 25 o c 2 o c ; drive level = 0.5 mw shunt capacitance (max) 10 pf motional capacitan ce (min) 10 pf series resistance (max) 60 ? spurious response (max) > 5 db below main within 500 khz * equivalent differential capacitance across the xtlp/xtln pins. ** if a crystal with a larger load is used, external shunt capacitors to ground sho uld be added to make up the equivalent capacitance difference. *** s ystem vendors need to select the proper crystal according to their applications, such as operating environment, product lifetime, and etc since crystal aging, operating temper ature, and other factors can affect the crystal frequency tolerance. downloaded from: http:///
78q8430 data sheet ds_8430_001 84 rev. 1.2 10 system bus interface schematic 78q8430 single chip 10/100 ethernet mac & phy +3.3v vcc gnd data31 data30 data29 data28 data27 data26 data25 data24 data23 data22 data21 data20 data19 data18 data17 data16 data15 data14 data13 data12 data11 data10 data9 data8 data7 data6 data5 data4 data3 data2 data1 data0 addr9 addr8 addr7 addr6 addr5 addr4 addr3 addr2 addr1 addr0 reset busclk cs wr oe memwait int pme endian1 endian0 bootsz1 bootsz0 busmode clkmode waitmode promclk promcs promdo promdi optional jtag bsdl interface optional external eeprom bootsz[1:0] 00 - bus is 32-bit wide 01 - bus is 16-bit wide 10 - bus is 8-bit wide endian[1:0] 0,0 = big endian (msb at high bit positions) 1,1 = little endian (msb at low bit positions) busmode, clkmode, waitmode 0,0,0 = sync bus, ext. system clock, memwait act low 0,0,1 = sync bus, ext. system clock, memwait act high 1,0,0 = async bus, ext. system clock, memwait act low 1,0,1 = async bus, ext. system clock, memwait act high 1,1,0 = async bus, int. system clock, memwait act low 1,1,1 = async bus, int. system clock, memwait act high tclk trst tms tdo tdi figure 15 : system bus interface schematic downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 85 11 line interface schematic figure 16 shows a typical analog line interface schematic (not all components are shown) . activity rj45 led led link 680 ? 680 ? +3.3v a c a c 12 3 6 1:1 transformer 50 ? 50 ? +3.3va 0.1 f 50 ? 50 ? +3.3va 0.1 f +3.3va 0.1 f 0.1 f 27pf 25. 000 mhz parallel resonant led 0 led 1 txp txn rxp rxn xtlp xtln +3.3v +3.3va +3.3va vcc vcca gnd 0.1 f 0.1 f 0.1 f 10 f vcca ferrite * 27pf * shunt capacitor value will vary depending on crystal capacitance. * 78q8430 single chip 10/100 ethernet mac and phy vcca figure 16 : line interface schematic downloaded from: http:///
78q8430 data sheet ds_8430_001 86 rev. 1.2 12 package mechanical drawing (100 - pin lqfp) 1 0.50(0.020)typ. 0.05(0.002) 0.15(0.006) 0.18(0.007) 0.27(0.011) 0.60(0.024) typ. 13.80 (0.543) 14.20 (0.559) 15.70 (0.618) 16.30 (0.641) 15.70 (0.618) 16.30 (0.641) 1.40(0.055) 1.60(0.063) lqfp 100 side view top view figure 17 : lqfp drawing downloaded from: http:///
ds_8430_001 78q8430 data sheet rev. 1.2 87 13 ordering information table 37 lists the order numbers and packaging marks used to identify 78q8430 products. table 37 : 78q8430 order numbers and packaging marks part description order number packaging mark 78q8430 lqfp, lead free 78q8430 - 100igt/f 78q8430 - 100igt 78q8430 lqfp, lead free, tape and reel 78q8430 - 100igtr/f 78q8430 - 100igt 14 related documentation the f ollowing 78q8430 documents are available from teridian semiconductor corporation: 78q8430 data sheet (this document) 78q8430 layout guidelines 78q8430 software driver development guidelines 78q8430 driver guide for st 5100/os - 20 with nexgen tcp/ip stack 7 8q8430 stem demo board user manual 78q8430 driver guide for arm920t linux 78q8430 arm9(920t) embest evaluation board user manual 78q8430 arm9(920t) linux driver diagnostic guide check the website for the latest versions of these documents. 15 contact infor mation for more information about teridian semiconductor products or to check t he availability of the 78q8430, contact us at: 6440 oak canyon road suite 100 irvine, ca 92618 - 5201 telephone: (714) 508 - 8800 fax: (714) 508 - 8878 email: lan.support@teridian.c om for a complete list of worldwide sales offices, go to http://www.teridian.com . downloaded from: http:///
78q8430 data sheet ds_8430_001 88 rev. 1.2 r evision history revision date description 1.0 7/21/2008 first publication. 1.1 1/21/2009 removed 128 - pin package . 1.2 3/ 6/ 2009 removed commercial temp erature package . ? 2009 teridian semiconductor corporation. all rights reserved. teridian semiconductor corporation is a registered trademark of teridian semic onductor corporation. simplifying syste m integration is a trademark of teridian semiconductor corporation . arm and arm9 are trademark s of arm limited. linux is the registered trademark of linus torvalds. intel is the registered trademark of intel corporation. vxworks is a trademark of win d rive r systems, incorporated. all other trademarks are the property of their respective owners. teridian semiconductor corporation makes no warranty for the use of its produc ts, other than expressly contained in the companys warranty detailed in the teridian semiconductor corporati on standard terms and conditions. the company assumes no responsibility for any errors which m ay appear in this document, reserves the right to change devices or specifications detailed he rein at any time without notice and does not make any commitment to update the information contained herein. accordingly, the reader is cautioned to verify that this document is current by comparing it to the latest version on http://www.teridian.com or by checking with your sales representative. teridian semiconductor corp., 6440 oak canyon, suite 100, irvine, ca 92618 tel (714) 508 - 8800, fax (714) 508 - 8877, http://www.teridian.com downloaded from: http:///


▲Up To Search▲   

 
Price & Availability of 78Q8430-100IGTF

All Rights Reserved © IC-ON-LINE 2003 - 2022  

[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy]
Mirror Sites :  [www.datasheet.hk]   [www.maxim4u.com]  [www.ic-on-line.cn] [www.ic-on-line.com] [www.ic-on-line.net] [www.alldatasheet.com.cn] [www.gdcy.com]  [www.gdcy.net]


 . . . . .
  We use cookies to deliver the best possible web experience and assist with our advertising efforts. By continuing to use this site, you consent to the use of cookies. For more information on cookies, please take a look at our Privacy Policy. X